:root{--bg: #f5f6f8;--surface: #ffffff;--border: #d8dadf;--text: #1f2329;--muted: #5a6371;--primary: #2962ff;--primary-hover: #1e4cd9;--danger: #c0392b;--success: #2e7d32;--warning: #b87800;--shadow: 0 1px 2px rgba(0,0,0,.04), 0 4px 12px rgba(0,0,0,.06);--navy: #17233c;--primary-soft: #edf3ff;--panel-shadow: 0 10px 30px rgba(24, 36, 66, .09)}.project-team-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-team-choice{display:flex!important;align-items:flex-start;gap:10px;margin:0!important;padding:13px;border:1px solid #dce4f0;border-radius:14px;background:#f8faff}.project-team-choice input{width:auto!important;margin-top:3px}.project-team-choice span{display:flex;min-width:0;flex-direction:column}.project-team-choice small{color:#7a859b}.project-team-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.project-team-admin-card{display:flex;flex-direction:column;padding:20px;border:1px solid #dfe6f1;border-radius:20px;background:linear-gradient(145deg,#fff,#f7f9fd);box-shadow:0 13px 30px #23345b12}.project-team-admin-card header{display:flex;align-items:center;gap:11px}.project-team-admin-card header>span{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:linear-gradient(145deg,#29458e,#5875da);color:#fff;font-weight:900}.project-team-admin-card header>div{min-width:0;flex:1}.project-team-admin-card h4{margin:0;font-size:18px}.project-team-admin-card header p{margin:2px 0;color:#7a859b;font-size:12px}.project-team-admin-card header>i{padding:5px 8px;border-radius:999px;background:#eef1f6;color:#788397;font-size:10px;font-style:normal;font-weight:800}.project-team-admin-card header>i.active{background:#e6f4ea;color:#267447}.project-team-admin-card>p{min-height:40px;color:#536078}.project-team-admin-stats{display:flex;gap:18px;padding:12px 0;border-block:1px solid #e7ebf3;color:#68758c;font-size:13px}.project-team-admin-stats b{color:#172442;font-size:18px}.project-team-tags{display:flex;flex-wrap:wrap;gap:5px;padding:12px 0}.project-team-tags span{padding:5px 8px;border-radius:8px;background:#edf2ff;color:#405cac;font-size:11px}.project-team-admin-card footer{display:flex;justify-content:flex-end;gap:7px;margin-top:auto}.project-team-form-section{margin-top:16px;padding:16px;border:1px solid #e0e6f1;border-radius:16px;background:#f9faff}.project-team-form-section h4{margin:0}.project-team-form-section>p{margin:3px 0 12px;color:#778399;font-size:12px}.project-team-member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.project-team-member-grid label{display:flex!important;align-items:center;gap:8px;margin:0!important;padding:9px;border-radius:10px;background:#fff;color:#26344f}.project-team-member-grid input,.project-team-active input{width:auto!important}.project-team-active{display:flex!important;align-items:flex-start;gap:10px;margin-top:15px!important}.project-team-active span{display:flex;flex-direction:column}.project-team-active small{color:#7a859b}@media(max-width:760px){.project-team-choice-grid,.project-team-member-grid{grid-template-columns:1fr}}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg);font-size:14px;line-height:1.45}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:12px}.screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:32px;width:100%;max-width:380px}.card h1{margin:0 0 6px;font-size:28px;color:var(--primary)}.card p{margin:0 0 20px}label{display:block;margin-bottom:14px;font-weight:500;color:var(--text)}label>input:not([type=checkbox]):not([type=radio]),label>select,label>textarea{display:block;width:100%;margin-top:6px}label>input[type=checkbox],label>input[type=radio]{margin-right:8px;vertical-align:middle}input[type=text],input[type=email],input[type=password],input[type=date],input[type=number],select,textarea{padding:9px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;background:#fff;font-family:inherit}.modal label{font-weight:500}.toolbar label{display:flex;align-items:center;gap:8px;margin-bottom:0}.toolbar label>input:not([type=checkbox]):not([type=radio]),.toolbar label>select,.toolbar label>textarea{display:inline-block;width:auto;margin-top:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--primary);outline-offset:-2px;border-color:transparent}button{cursor:pointer;background:var(--primary);color:#fff;border:none;border-radius:9px;padding:10px 18px;font-size:14px;font-weight:500;font-family:inherit}button:hover{background:var(--primary-hover)}button:disabled{opacity:.6;cursor:not-allowed}button.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}button.secondary:hover{background:var(--bg)}button.danger{background:var(--danger)}button.link{background:none;color:var(--primary);padding:0;text-decoration:underline}button.link:hover{background:none;color:var(--primary-hover)}.error{color:var(--danger);margin-top:12px;min-height:18px}#app{display:flex;height:100vh}.sidebar{width:248px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column}.brand{font-size:22px;font-weight:700;color:var(--primary);padding:20px 20px 16px}.sidebar-tenant-wrapper{position:relative;padding:0 12px 12px;border-bottom:1px solid var(--border)}.sidebar-company-card,.sidebar-company-picker{position:relative;display:flex;align-items:center;gap:11px;min-height:58px;padding:9px 10px;border:1px solid #dce4f3;border-radius:13px;background:linear-gradient(145deg,#fff,#f4f7ff);box-shadow:0 5px 16px #1e386e12}.sidebar-company-picker{width:100%;border:1px solid #dce4f3;color:inherit;text-align:left;cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.sidebar-company-picker:hover{border-color:#b8c8ec;box-shadow:0 7px 20px #1e386e1c;transform:translateY(-1px)}.sidebar-company-picker:focus-within{border-color:#5879ed;box-shadow:0 0 0 3px #4e69f124,0 7px 20px #1e386e1a}.sidebar-company-mark{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;color:#fff;background:linear-gradient(145deg,#536ff0,#3152bd);box-shadow:0 5px 12px #3152bd3d}.sidebar-company-mark svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar-company-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.sidebar-company-eyebrow{color:#7d8ba2;font-size:.62rem;font-weight:750;line-height:1;letter-spacing:.095em;text-transform:uppercase}.sidebar-company-name{color:#172442;font-size:.94rem;font-weight:500;line-height:1.25;letter-spacing:-.012em;white-space:normal;overflow-wrap:anywhere}.sidebar-select-chevron{width:16px;height:16px;flex:0 0 16px;margin-left:2px;transition:transform .16s;pointer-events:none;fill:none;stroke:#61708d;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar-company-picker[aria-expanded=true] .sidebar-select-chevron{transform:rotate(180deg)}.sidebar-tenant-menu{position:absolute;z-index:80;top:calc(100% - 5px);left:12px;width:320px;max-width:calc(100vw - 28px);max-height:min(430px,calc(100vh - 180px));padding:8px;overflow-y:auto;border:1px solid #d9e2f2;border-radius:14px;background:#fffffffa;box-shadow:0 18px 45px #13224433;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sidebar-tenant-menu-title{padding:6px 9px 8px;color:#7d8ba2;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.sidebar-tenant-option{display:flex;align-items:center;gap:10px;width:100%;padding:9px;border:0;border-radius:10px;background:transparent;color:#172442;text-align:left}.sidebar-tenant-option:hover{background:#f0f4ff;transform:none}.sidebar-tenant-option.is-selected{background:linear-gradient(100deg,#e7eeff,#f2f6ff);color:#244ab0}.sidebar-tenant-option-mark{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:9px;background:#e8eefc;color:#3157bd;font-size:.78rem;font-weight:800}.sidebar-tenant-option.is-selected .sidebar-tenant-option-mark{background:#4d6de2;color:#fff}.sidebar-tenant-option-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.sidebar-tenant-option-copy strong{white-space:normal;line-height:1.25;font-size:.88rem;font-weight:500}.sidebar-tenant-option-copy small{color:#8793a8;font-size:.66rem;letter-spacing:.05em}.sidebar-tenant-check{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:#4263d3;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tenant-list-shell{overflow:hidden;border:1px solid #e1e7f1;border-radius:16px;background:#fff;box-shadow:var(--panel-shadow)}.tenant-list-table{margin:0;border:0;border-radius:0}.tenant-list-table tbody tr{transition:background .16s,box-shadow .16s}.tenant-list-table tbody tr:hover{background:#f8faff}.tenant-list-table tbody tr.is-current{background:linear-gradient(90deg,#edf3ff,#f8faff 72%);box-shadow:inset 4px 0 #506ff0}.tenant-list-table tbody tr.is-current td{border-bottom-color:#dce5f8}.tenant-list-name{display:flex;align-items:center;gap:11px;min-width:220px}.tenant-list-name>span:last-child{display:flex;flex-direction:column;gap:2px}.tenant-list-name strong{color:#172442;font-size:.94rem;font-weight:500}.tenant-list-name small{color:#4f68bd;font-size:.68rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.tenant-list-avatar{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#edf2fc;color:#4561b7;font-size:.8rem;font-weight:850}.tenant-list-table tr.is-current .tenant-list-avatar{color:#fff;background:linear-gradient(145deg,#5878ef,#3454be);box-shadow:0 5px 12px #3454be38}.tenant-current-pill{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#e4ecff;color:#3153b5;font-size:.73rem;font-weight:750}.group-list-shell{overflow:hidden;border:1px solid #e1e7f1;border-radius:16px;background:#fff;box-shadow:var(--panel-shadow)}.group-list-table{margin:0;box-shadow:none}.group-list-name{display:flex;align-items:center;gap:11px}.group-list-name>span{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;background:linear-gradient(145deg,#edf2ff,#dce6ff);color:#3c5fbd;font-size:.8rem;font-weight:750}.group-list-name>span.has-icon{background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 5px 12px #3454be33}.group-list-avatar svg{width:19px;height:19px}.group-list-name>div{display:flex;flex-direction:column;gap:2px}.group-list-name strong{color:#172442;font-size:.92rem;font-weight:500}.group-list-name small{color:#8a95a8;font-size:.67rem}.group-member-count{display:inline-grid;min-width:34px;height:28px;padding:0 9px;place-items:center;border-radius:999px;background:#edf2ff;color:#3b59b1;font-size:.75rem;font-weight:700}.group-row-actions{display:flex;justify-content:flex-end;gap:6px}td.actions .group-action-button,.group-member-list .group-action-button{position:relative;display:grid;width:34px;height:34px;margin:0;padding:0;place-items:center;border:1px solid #dfe5ef;border-radius:9px;background:#fff;color:#63728d;box-shadow:none;transition:.15s}.group-action-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.group-action-button:hover{color:#3157bd!important;border-color:#bdccef!important;background:#f0f4ff!important;transform:translateY(-1px)}.group-action-button.is-danger{color:#a85a59!important}.group-action-button.is-danger:hover{color:#b42318!important;border-color:#edc4c0!important;background:#fff1ef!important}.group-action-button:after{content:attr(data-tooltip);position:absolute;z-index:90;right:0;bottom:calc(100% + 8px);width:max-content;padding:6px 8px;border-radius:7px;background:#172442;color:#fff;font-size:.68rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(3px);transition:.14s}.group-action-button:hover:after,.group-action-button:focus-visible:after{opacity:1;transform:translateY(0)}.modal.modal-group{width:min(650px,calc(100vw - 32px));max-width:650px;padding:0;background:#f4f6fb}.modal.modal-group:has(.group-icon-picker){width:min(860px,calc(100vw - 32px));max-width:860px;max-height:calc(100dvh - 36px);overflow:hidden}.modal-group>h3{margin:0;padding:20px 24px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-group>.modal-form{padding:18px 22px 0}.modal-group:has(.group-icon-picker)>.modal-form{overflow-y:auto}.group-form-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:13px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.group-form-icon{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border-radius:11px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be33}.group-form-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.group-form-intro strong{color:#172442;font-size:.9rem;font-weight:650}.group-form-intro p{margin:3px 0 0;color:#6f7c93;font-size:.74rem}.group-form-section{margin-bottom:12px;padding:15px;border:1px solid #e2e7f0;border-radius:13px;background:#fff;box-shadow:0 4px 15px #1927480a}.group-form-section label{margin:0;color:#44516a;font-size:.76rem;font-weight:550}.group-form-section label em{margin-left:5px;color:#5970bd;font-size:.64rem;font-style:normal;text-transform:uppercase}.group-form-section input,.group-form-section select{width:100%;min-height:40px;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff}.group-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.group-section-heading>div{display:flex;flex-direction:column;gap:3px}.group-section-heading h4{margin:0;color:#24334f;font-size:.86rem;font-weight:650}.group-section-heading small{color:#8390a5;font-size:.68rem;font-weight:450}.group-section-heading>span{display:grid;min-width:24px;height:24px;padding:0 7px;place-items:center;border-radius:999px;background:#e9efff;color:#3e5cba;font-size:.67rem;font-weight:750}.group-member-list{display:flex;flex-direction:column;gap:7px}.group-member-list article{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid #e4e9f1;border-radius:10px;background:#fafbfe}.group-member-list article>span{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:#e7edfc;color:#3f5db2;font-size:.72rem;font-weight:750}.group-member-list article>div{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.group-member-list strong{color:#263551;font-size:.8rem;font-weight:550}.group-member-list small{color:#8490a3;font-size:.67rem}.group-add-member>div:last-child{display:grid;grid-template-columns:1fr auto;align-items:end;gap:9px}.group-add-member select{margin:0}.modal-group .modal-actions{position:sticky;z-index:5;bottom:0;margin:16px -22px 0;padding:14px 22px;border-top:1px solid #e0e5ee;background:#fff}.group-icon-selection{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;border:1px solid #dfe6f4;border-radius:12px;background:linear-gradient(120deg,#f7f9ff,#fff)}.group-icon-preview{display:grid;width:48px;height:48px;place-items:center;border-radius:13px;background:linear-gradient(145deg,#edf2ff,#dce6ff);color:#3c5fbd;font-size:1rem;font-weight:800}.group-icon-preview.has-icon{background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be33}.group-icon-preview svg{width:24px;height:24px}.group-icon-selection>div{display:flex;min-width:0;flex-direction:column;gap:2px}.group-icon-selection strong{color:#1f2e4b;font-size:.82rem}.group-icon-selection small{color:#7c899f;font-size:.67rem}.group-icon-remove{min-height:34px;padding:6px 10px;font-size:.7rem}.group-icon-search{position:relative;display:flex;align-items:center;margin-bottom:10px}.group-icon-search>svg{position:absolute;z-index:1;left:12px;width:17px;height:17px;fill:none;stroke:#718097;stroke-width:1.8;stroke-linecap:round}.group-icon-search label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.group-form-section .group-icon-search input{min-height:42px;margin:0;padding:8px 39px;border-radius:10px}.group-icon-search-clear{position:absolute;right:7px;width:30px;height:30px;min-height:30px;padding:0;border:0;border-radius:8px;background:transparent;color:#78869c;font-size:1.25rem;box-shadow:none}.group-icon-search-clear:hover{background:#eef2fb;color:#3158bd;transform:none}.group-icon-search>input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.group-icon-tabs{display:flex;gap:5px;margin-bottom:9px;overflow-x:auto;padding:1px 1px 4px;scrollbar-width:thin}.group-icon-tabs button{min-height:34px;flex:0 0 auto;padding:7px 11px;border:1px solid #dfe5f0;border-radius:9px;background:#fff;color:#66748d;font-size:.69rem;font-weight:650;box-shadow:none}.group-icon-tabs button:hover{border-color:#bdcae9;background:#f4f7ff;color:#3156b6;transform:none}.group-icon-tabs button[aria-selected=true]{border-color:#9eb2ee;background:#e9efff;color:#2f52b7;box-shadow:inset 0 0 0 1px #4660cd14}.group-icon-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;max-height:285px;overflow-y:auto;padding:9px;border:1px solid #e1e6ef;border-radius:12px;background:#f8fafe}.group-icon-option{display:flex;min-width:0;min-height:68px;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px 4px;border:1px solid transparent;border-radius:10px;background:#fff;color:#53627d;box-shadow:0 2px 7px #2031550a}.group-icon-option:hover{border-color:#b8c7eb;background:#f0f4ff;color:#3157bd;transform:translateY(-1px)}.group-icon-option.is-selected{border-color:#5570db;background:#e8eeff;color:#284bae;box-shadow:inset 0 0 0 1px #5570db,0 5px 12px #314faf1f}.group-icon-option>span{display:grid;width:28px;height:28px;place-items:center}.group-icon-option svg{width:22px;height:22px}.group-icon-option small{max-width:100%;overflow:hidden;color:inherit;font-size:.59rem;font-weight:600;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.group-icon-option[hidden]{display:none}.group-icon-picker-footer{display:flex;justify-content:space-between;margin-top:8px;color:#8793a7;font-size:.64rem}.group-icon-result-count{color:#52699f;font-weight:650}.group-icon-empty{padding:18px;text-align:center;color:#78869c;font-size:.72rem}@media(max-width:760px){.modal.modal-group:has(.group-icon-picker){width:calc(100vw - 18px);max-height:calc(100dvh - 18px)}.group-icon-grid{grid-template-columns:repeat(5,minmax(0,1fr));max-height:260px}.group-icon-selection{grid-template-columns:44px minmax(0,1fr)}.group-icon-preview{width:44px;height:44px}.group-icon-remove{grid-column:1/-1;width:100%}}@media(max-width:460px){.group-icon-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:7px}.group-icon-option{min-height:62px}.group-icon-tabs button{padding-inline:9px}}.sidebar nav{display:flex;flex-direction:column;padding:10px 10px 18px;flex:1;overflow-y:auto}.nav-section{display:flex;flex-direction:column;margin-bottom:9px}.nav-label{padding:11px 11px 5px;font-size:.66rem;font-weight:750;letter-spacing:.105em;text-transform:uppercase;color:var(--text-muted, #888);pointer-events:none;-webkit-user-select:none;user-select:none}.sidebar nav a{display:flex;align-items:center;gap:11px;padding:8px 12px;color:var(--text);text-decoration:none;border-left:0;border-radius:9px;font-size:.925rem}.sidebar nav a.nav-company{padding:10px 12px;font-weight:500;font-size:1rem}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.sidebar nav a svg{width:18px;height:18px;flex:0 0 18px;color:#7d8ba2;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:color .16s,transform .16s}.sidebar nav a span{min-width:0;overflow:hidden;text-overflow:ellipsis}.sidebar nav a:hover{background:#f3f6fc;color:#1d4fac}.sidebar nav a:hover svg{color:#3970e9;transform:translate(1px)}.sidebar nav a.active{color:#204ba5;background:linear-gradient(90deg,#e9f0ff,#f3f7ff);box-shadow:inset 3px 0 var(--primary);font-weight:650}.sidebar nav a.active svg{color:var(--primary);stroke-width:2.05}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.sidebar-release{display:grid;grid-template-columns:34px minmax(0,1fr) 7px;align-items:center;gap:9px;margin:0 0 7px;padding:9px 10px;border:1px solid #dbe4f5;border-radius:11px;color:#233a6b;background:linear-gradient(145deg,#f8faff,#edf3ff);box-shadow:0 5px 14px #1f428b12;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s}.sidebar-release:hover{border-color:#b8c9ee;box-shadow:0 8px 18px #1f428b1f;transform:translateY(-1px)}.sidebar-release-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;color:#fff;background:linear-gradient(145deg,#315ed2,#527bdf)}.sidebar-release-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.sidebar-release-copy{display:flex;min-width:0;flex-direction:column;gap:2px}.sidebar-release-copy small{color:#7787a5;font-size:.6rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.sidebar-release-copy strong{overflow:hidden;color:#243c71;font-size:.74rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.sidebar-release-state{width:7px;height:7px;border-radius:50%;background:#43a467;box-shadow:0 0 0 3px #43a46721}main{flex:1;overflow-y:auto;padding:30px 34px 48px;background:linear-gradient(145deg,#f5f7fb 0,#f8f9fc 52%,#f1f5fb)}.page-header{display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;min-height:126px;margin:0 0 20px;padding:26px 30px;border-radius:18px;color:#fff;background:linear-gradient(125deg,var(--navy) 0%,#244caa 64%,#3976ff 100%);box-shadow:0 18px 40px #18388029;flex-wrap:wrap;gap:12px}.page-header:after{content:"";position:absolute;right:12%;top:-115px;width:205px;height:205px;border:34px solid rgba(255,255,255,.075);border-radius:50%}.page-header>*{position:relative;z-index:1}.page-header h2{margin:0;color:#fff;font-size:clamp(27px,3vw,37px);letter-spacing:-.035em}.page-header p,.page-header .muted{margin:6px 0 0;color:#ffffffbd}.page-header button{min-height:44px;color:#173064;background:#fff;box-shadow:0 8px 22px #00000024}.page-header button:hover{color:#173064;background:#f1f5ff;transform:translateY(-1px)}.toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:18px;padding:13px 15px;border:0;border-radius:13px;background:var(--surface);box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse;background:var(--surface);border:0;border-radius:13px;box-shadow:var(--panel-shadow)}th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--border)}th{background:#f3f6fb;font-weight:600;font-size:12px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}tr:last-child td{border-bottom:none}tbody tr:hover{background:#f4f7ff}td.actions{white-space:nowrap;text-align:right}td.actions button{padding:5px 10px;font-size:12px;margin-left:6px}.badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;text-transform:uppercase}.badge.green{background:#e3f3e6;color:var(--success)}.badge.red{background:#fbe6e3;color:var(--danger)}.badge.yellow{background:#fff4d6;color:#8a6500}.badge.gray{background:var(--bg);color:var(--muted)}td.row-actions{white-space:nowrap;text-align:right}td.row-actions button{padding:4px 10px;font-size:12px;margin-left:4px}.empty{text-align:center;padding:40px;color:var(--muted);background:var(--surface);border:1px dashed var(--border);border-radius:14px;box-shadow:var(--shadow)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;padding:24px;z-index:100}.modal{background:var(--surface);border-radius:16px;box-shadow:0 24px 70px #121b303d;padding:24px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.modal h3{margin:0 0 16px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.modal.modal-employee{display:flex;width:min(900px,calc(100vw - 32px));max-width:900px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);flex-direction:column;padding:0;overflow:hidden;background:#f4f6fb}.modal-employee>h3{margin:0;padding:22px 26px 18px;background:#fff;border-bottom:1px solid #e4e9f2;font-size:1.22rem;color:#172442}.modal-employee>.modal-form{display:flex;min-height:0;flex:1;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding:18px 24px 0}.employee-form-intro{display:flex;align-items:center;gap:13px;margin-bottom:16px;padding:14px 16px;border:1px solid #dbe4f5;border-radius:14px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.employee-form-avatar{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;font-size:1rem;font-weight:750;box-shadow:0 6px 14px #3454be38}.employee-form-intro strong{color:#172442;font-size:.96rem;font-weight:650}.employee-form-intro p{margin:3px 0 0;color:#66748d;font-size:.78rem;line-height:1.4}.employee-form-tabs{display:flex;gap:5px;margin:0 0 12px;padding:5px;border:1px solid #dfe5f0;border-radius:12px;background:#e9edf5}.employee-form-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;flex:1;padding:9px 8px;border:0;border-radius:8px;background:transparent;color:#637088;font-size:.74rem;font-weight:550;line-height:1.2;box-shadow:none}.employee-form-tabs button:hover{background:#ffffffa3;color:#2f4c9f}.employee-form-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 3px 10px #1c2f5b1c}.employee-form-tabs button span{display:grid;place-items:center;width:21px;height:21px;flex:0 0 21px;border-radius:6px;background:#dce4f8;color:#5268a8;font-size:.58rem;font-weight:800}.employee-form-tabs button[aria-selected=true] span{background:#4d6de2;color:#fff}.employee-form-section{min-height:285px;margin-bottom:0;padding:18px;border:1px solid #e2e7f0;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1927480b}.employee-form-section[hidden]{display:none!important}.employee-section-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px;padding-bottom:13px;border-bottom:1px solid #edf0f5}.employee-section-heading>span{display:grid;place-items:center;width:29px;height:29px;flex:0 0 29px;border-radius:9px;background:#e9efff;color:#3d5dc1;font-size:.67rem;font-weight:800}.employee-section-heading h4{margin:0;color:#172442;font-size:.94rem;font-weight:650}.employee-section-heading p{margin:3px 0 0;color:#7b879b;font-size:.74rem;line-height:1.35}.employee-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px}.employee-form-grid label{min-width:0;margin:0;color:#44516a;font-size:.78rem;font-weight:550}.employee-form-grid label em{margin-left:5px;color:#5970bd;font-size:.64rem;font-style:normal;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.employee-form-grid input,.employee-form-grid select,.employee-form-grid textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none;transition:border-color .16s,box-shadow .16s,background .16s}.employee-form-grid input,.employee-form-grid select{min-height:38px}.employee-form-grid input:focus,.employee-form-grid select:focus,.employee-form-grid textarea:focus{outline:0;border-color:#617ceb;background:#fff;box-shadow:0 0 0 3px #4f6be21f}.employee-form-grid label small{display:block;margin-top:5px;color:#8792a5;font-size:.68rem;font-weight:400;line-height:1.35}.employee-field-wide{grid-column:1/-1}.employee-sites-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.employee-site-option,.employee-active-toggle{display:flex!important;align-items:flex-start;gap:10px;margin:0!important;padding:11px 12px;border:1px solid #e0e6f0;border-radius:11px;background:#fafbfe;cursor:pointer;transition:border-color .15s,background .15s}.employee-site-option:hover,.employee-active-toggle:hover{border-color:#bfcdf0;background:#f4f7ff}.employee-site-option:has(input:checked),.employee-active-toggle:has(input:checked){border-color:#aebfed;background:#eef3ff}.employee-site-option input,.employee-active-toggle input{margin:3px 0 0;flex:0 0 auto}.employee-site-option span,.employee-active-toggle span{display:flex;flex-direction:column;gap:2px}.employee-site-option b,.employee-active-toggle b{color:#283751;font-size:.8rem;font-weight:600}.employee-site-option small,.employee-active-toggle small{color:#7f8ba0;font-size:.68rem;font-weight:400;line-height:1.3}.employee-active-toggle{margin-bottom:12px!important;background:#f7fbf8}.employee-active-toggle:has(input:checked){border-color:#b7dbc2;background:#edf8f0}.employee-access-groups{display:grid;gap:13px}.employee-access-group{padding:14px;border:1px solid #e4e9f2;border-radius:14px;background:#fff}.employee-access-group-title{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.employee-access-group-title b{color:#263653;font-size:.86rem}.employee-access-group-title small{color:#7a879a;font-size:.7rem}.employee-project-permission{margin-bottom:10px!important;background:#f7f8ff}.employee-site-option.is-disabled{opacity:.58;cursor:not-allowed}.employee-qualification-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.8fr);gap:14px}.employee-qualification-current,.employee-qualification-add{min-width:0;padding:14px;border:1px solid #e4e9f2;border-radius:13px;background:#fbfcfe}.employee-qualification-add{background:linear-gradient(145deg,#f7f9ff,#fff)}.employee-subsection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:11px}.employee-subsection-heading>div{display:flex;min-width:0;flex-direction:column;gap:2px}.employee-subsection-heading b{color:#263653;font-size:.82rem;font-weight:650}.employee-subsection-heading small{color:#7f8ba0;font-size:.68rem;line-height:1.35}.employee-qualification-count{display:grid;min-width:25px;height:25px;padding:0 7px;place-items:center;border-radius:999px;background:#e8efff;color:#3659bd;font-size:.67rem;font-weight:750}.employee-qualification-list{display:flex;max-height:255px;flex-direction:column;gap:7px;overflow:auto;scrollbar-gutter:stable}.employee-qualification-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:10px;border:1px solid #e1e7f0;border-radius:10px;background:#fff}.employee-qualification-symbol{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:#eaf0ff;color:#3e60c4}.employee-qualification-symbol svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.employee-qualification-details{display:flex;min-width:0;flex-direction:column;gap:2px}.employee-qualification-details strong{overflow:hidden;color:#283751;font-size:.77rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.employee-qualification-details small{overflow:hidden;color:#7f8ba0;font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}.employee-qualification-validity .badge{white-space:nowrap}.employee-qualification-item .employee-action-button{width:32px;height:32px}.employee-qualification-empty{display:flex;min-height:108px;align-items:center;justify-content:center;flex-direction:column;gap:3px;padding:18px;border:1px dashed #d8e0ec;border-radius:10px;background:#fff;color:#68758b;text-align:center}.employee-qualification-empty b{color:#46546d;font-size:.78rem}.employee-qualification-empty small{font-size:.68rem}.employee-qualification-fields{display:flex;flex-direction:column;gap:10px}.employee-qualification-fields label{margin:0;color:#44516a;font-size:.74rem;font-weight:550}.employee-qualification-type-field{position:relative;min-width:0;color:#44516a;font-size:.74rem;font-weight:550}.employee-qualification-type-field>label{display:block;margin:0 0 5px}.employee-qualification-search-wrap{position:relative;display:flex;align-items:center}.employee-qualification-search-wrap>svg{position:absolute;z-index:1;left:12px;width:17px;height:17px;fill:none;stroke:#6e7b91;stroke-linecap:round;stroke-width:1.8;pointer-events:none}.employee-qualification-search-wrap>input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:8px 40px 8px 38px}.employee-qualification-search-wrap>input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.employee-qualification-search-clear{position:absolute;z-index:2;right:5px;display:grid;width:30px;height:30px;min-height:30px;place-items:center;padding:0;border-radius:8px;background:transparent;color:#68758b;font-size:1.18rem;line-height:1;box-shadow:none}.employee-qualification-search-clear:hover{background:#e9eef8;color:#243b74;transform:none}.employee-qualification-search-clear[hidden],.employee-qualification-options[hidden]{display:none!important}.employee-qualification-options{position:absolute;z-index:20;top:67px;right:0;left:0;display:flex;max-height:228px;flex-direction:column;gap:5px;overflow-y:auto;overscroll-behavior:contain;padding:6px;border:1px solid #d8e0ed;border-radius:11px;background:#fff;box-shadow:0 14px 34px #1927482e;scrollbar-width:thin}.employee-qualification-option{display:flex;width:100%;min-height:48px;align-items:center;justify-content:flex-start;gap:9px;padding:7px 9px;border:0;border-radius:8px;background:#fff;color:#263551;text-align:left;box-shadow:none}.employee-qualification-option:hover,.employee-qualification-option.is-active{background:#edf2ff;color:#2449aa;transform:none}.employee-qualification-option-icon{display:grid;width:31px;height:31px;flex:0 0 31px;place-items:center;border-radius:8px;background:#e8eefc;color:#3d5ebe;font-size:1rem;font-weight:700}.employee-qualification-option-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.employee-qualification-option>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px}.employee-qualification-option strong,.employee-qualification-option small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-qualification-option strong{color:inherit;font-size:.75rem;font-weight:650}.employee-qualification-option small{color:#8490a3;font-size:.64rem;font-weight:400}.employee-qualification-custom{border-top:1px solid #edf0f5;background:#f8faff}.employee-qualification-option-empty{padding:13px;color:#748097;font-size:.7rem;font-weight:400;text-align:center}.employee-qualification-search-status{display:block;margin-top:5px;color:#7d899d;font-size:.65rem;font-weight:400;line-height:1.4}.employee-qualification-fields input{width:100%;min-height:38px;margin-top:5px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.employee-qualification-fields input:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.employee-qualification-fields label small{display:block;margin-top:4px;color:#8792a5;font-size:.65rem;font-weight:400}.employee-qualification-add-button{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:2px}.employee-qualification-add-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.employee-qualification-error{min-height:17px;margin-top:7px;color:var(--danger);font-size:.7rem}.modal-employee .modal-actions{position:sticky;z-index:3;bottom:0;flex:0 0 auto;margin:14px -24px 0;padding:15px 24px;border-top:1px solid #dde3ed;border-radius:0 0 16px 16px;background:#fff;box-shadow:0 -8px 22px #19274812}.modal-employee .modal-actions button{min-width:128px}@media(max-width:900px){.employee-form-tabs{overflow-x:auto;justify-content:flex-start;scrollbar-width:thin}.employee-form-tabs button{min-width:132px;flex:0 0 auto;white-space:nowrap}}@media(max-width:820px){.employee-qualification-layout{grid-template-columns:1fr}.employee-qualification-list{max-height:none}}@media(max-width:720px){.modal-backdrop:has(.modal-employee){padding:9px}.modal.modal-employee{width:calc(100vw - 18px);max-height:calc(100vh - 18px);max-height:calc(100dvh - 18px)}.modal-employee>h3{padding:18px}.modal-employee>.modal-form{padding:14px 14px 0}.employee-form-grid,.employee-sites-grid,.employee-qualification-layout{grid-template-columns:1fr}.employee-field-wide{grid-column:auto}.employee-form-section{min-height:0;padding:15px}.employee-qualification-list{max-height:none}.employee-qualification-item{grid-template-columns:auto minmax(0,1fr) auto}.employee-qualification-validity{grid-column:2/3}.modal-employee .modal-actions{margin:16px -14px 0;padding:12px 14px}}.modal.modal-company{width:min(900px,calc(100vw - 32px));max-width:900px;max-height:none;padding:0;overflow:hidden;background:#f4f6fb}.modal-company>h3{margin:0;padding:22px 26px 18px;border-bottom:1px solid #e4e9f2;background:#fff;color:#172442;font-size:1.22rem}.modal-company>.modal-form{display:flex;flex-direction:column;padding:18px 24px 0}.company-form-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:14px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.company-form-intro>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be38}.company-form-intro svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.company-form-intro strong{color:#172442;font-size:.96rem;font-weight:650}.company-form-intro p{margin:3px 0 0;color:#66748d;font-size:.78rem;line-height:1.4}.company-form-tabs{display:flex;gap:5px;margin-bottom:12px;padding:5px;border:1px solid #dfe5f0;border-radius:12px;background:#e9edf5}.company-form-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;flex:1;padding:9px;border:0;border-radius:8px;background:transparent;color:#637088;font-size:.78rem;font-weight:550;box-shadow:none}.company-form-tabs button:hover{background:#ffffffa3;color:#2f4c9f}.company-form-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 3px 10px #1c2f5b1c}.company-form-tabs button span,.company-panel-heading>span{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:7px;background:#dce4f8;color:#5268a8;font-size:.62rem;font-weight:800}.company-form-tabs button[aria-selected=true] span{background:#4d6de2;color:#fff}.company-form-panel{min-height:325px;padding:18px;border:1px solid #e2e7f0;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1927480b}.company-form-panel[hidden]{display:none!important}.company-panel-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:17px;padding-bottom:13px;border-bottom:1px solid #edf0f5}.company-panel-heading h4{margin:0;color:#172442;font-size:.94rem;font-weight:650}.company-panel-heading p{margin:3px 0 0;color:#7b879b;font-size:.74rem;line-height:1.35}.company-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 17px}.company-form-grid .wide{grid-column:1/-1}.company-form-grid label{min-width:0;margin:0;color:#44516a;font-size:.78rem;font-weight:550}.company-form-grid label em{margin-left:5px;color:#5970bd;font-size:.64rem;font-style:normal;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.company-form-grid input,.company-form-grid textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none;transition:border-color .16s,box-shadow .16s}.company-form-grid input{min-height:38px}.company-form-grid input:focus,.company-form-grid textarea:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.company-form-grid label>small{display:block;margin-top:5px;color:#8792a5;font-size:.68rem;font-weight:400;line-height:1.35}.company-ytj-action{display:flex;align-items:flex-end;gap:9px;align-self:end}.company-ytj-action button{min-height:38px;margin:0}.company-ytj-action .icon-link{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d7deea;border-radius:8px;background:#fff}.company-option{display:flex!important;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #e0e6f0;border-radius:10px;background:#fafbfe;cursor:pointer}.company-option:hover{border-color:#bfcdf0;background:#f4f7ff}.company-option:has(input:checked){border-color:#b7dbc2;background:#edf8f0}.company-option input{width:auto;min-height:0;margin:3px 0 0;flex:0 0 auto}.company-option span{display:flex;flex-direction:column;gap:2px}.company-option b{color:#283751;font-size:.8rem;font-weight:600}.company-option small{color:#7f8ba0;font-size:.68rem;font-weight:400;line-height:1.3}.company-form-panel .service-package{margin:0;padding:0;border:0;background:transparent}.company-form-panel .service-package legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.company-form-panel .service-package>p{padding:10px 12px;border:1px solid #dfe6f4;border-radius:10px;background:#edf3ff;color:#62718e}.company-form-panel .service-package>label{margin:8px 0;padding:10px 12px;background:#fafbfe}.company-form-panel .service-package>label:has(input:checked){border-color:#aebfed;background:#eef3ff}.modal-company .modal-actions{margin:14px -24px 0;padding:15px 24px;border-top:1px solid #dde3ed;background:#fff;box-shadow:0 -8px 22px #1927480b}.modal-company .modal-actions button{min-width:128px}@media(max-width:720px){.modal.modal-company{width:calc(100vw - 18px);max-height:96vh;overflow-y:auto}.modal-company>h3{padding:18px}.modal-company>.modal-form{padding:14px 14px 0}.company-form-tabs{overflow-x:auto;justify-content:flex-start}.company-form-tabs button{min-width:130px;flex:0 0 auto}.company-form-grid{grid-template-columns:1fr}.company-form-grid .wide{grid-column:auto}.company-form-panel{min-height:0;padding:15px}.modal-company .modal-actions{margin:14px -14px 0;padding:12px 14px}}.modal.modal-site{width:min(920px,calc(100vw - 32px));max-width:920px;max-height:none;padding:0;overflow:hidden;background:#f4f6fb}.modal-site>h3{margin:0;padding:22px 26px 18px;background:#fff;border-bottom:1px solid #e4e9f2;color:#172442;font-size:1.22rem}.modal-site>.modal-form{display:flex;flex-direction:column;padding:18px 24px 0}.site-form-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:14px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.site-form-mark{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be38}.site-form-mark svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.site-form-intro strong{color:#172442;font-size:.96rem;font-weight:650}.site-form-intro p{margin:3px 0 0;color:#66748d;font-size:.78rem}.site-form-tabs{display:flex;gap:5px;margin-bottom:12px;padding:5px;border:1px solid #dfe5f0;border-radius:12px;background:#e9edf5}.site-form-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;padding:9px;border:0;border-radius:8px;background:transparent;color:#637088;font-size:.78rem;font-weight:550;box-shadow:none}.site-form-tabs button:hover{background:#ffffffa3;color:#2f4c9f}.site-form-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 3px 10px #1c2f5b1c}.site-form-tabs button span,.site-panel-heading>span{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:7px;background:#dce4f8;color:#5268a8;font-size:.62rem;font-weight:800}.site-form-tabs button[aria-selected=true] span{background:#4d6de2;color:#fff}.site-form-panel{min-height:330px;padding:18px;border:1px solid #e2e7f0;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1927480b}.site-form-panel[hidden]{display:none!important}.site-panel-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px;padding-bottom:13px;border-bottom:1px solid #edf0f5}.site-panel-heading h4{margin:0;color:#172442;font-size:.94rem;font-weight:650}.site-panel-heading p{margin:3px 0 0;color:#7b879b;font-size:.74rem}.site-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 17px}.site-form-grid label{min-width:0;margin:0;color:#44516a;font-size:.78rem;font-weight:550}.site-form-grid label em{margin-left:5px;color:#5970bd;font-size:.64rem;font-style:normal;font-weight:650;text-transform:uppercase}.site-form-grid input,.site-form-grid select{width:100%;min-height:38px;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.site-field-wide{grid-column:1/-1}.site-active-toggle{display:flex!important;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #e0e6f0;border-radius:10px;background:#fafbfe}.site-active-toggle input{width:auto;min-height:0;margin:3px 0 0}.site-active-toggle span{display:flex;flex-direction:column;gap:2px}.site-active-toggle b{color:#283751;font-size:.8rem;font-weight:600}.site-active-toggle small{color:#7f8ba0;font-size:.68rem;font-weight:400}.site-active-toggle:has(input:checked){border-color:#b7dbc2;background:#edf8f0}.site-location-panel{padding:12px}.site-location-panel .location-picker{margin:0}.modal-site .modal-actions{margin:14px -24px 0;padding:15px 24px;border-top:1px solid #dde3ed;background:#fff;box-shadow:0 -8px 22px #1927480b}.modal.modal-card-pin{max-width:480px;padding:0;overflow:hidden;background:#f6f8fc}.modal-card-pin>h3{margin:0;padding:20px 22px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-card-pin>.modal-form{padding:20px 22px 0}.card-pin-form{display:grid;grid-template-columns:48px 1fr;gap:12px}.card-pin-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 7px 16px #3454be38}.card-pin-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.card-pin-copy strong{color:#172442;font-size:.94rem;font-weight:650}.card-pin-copy p{margin:4px 0 0;color:#738098;font-size:.76rem;line-height:1.45}.card-pin-form>label{grid-column:1/-1;margin:4px 0 0;color:#44516a;font-size:.76rem;font-weight:550}.card-pin-input{width:100%;height:54px;margin-top:7px!important;border:1px solid #d3dbea!important;border-radius:9px!important;background:#fff!important;color:#1c2a48;font-family:SFMono-Regular,Menlo,Consolas,monospace!important;font-size:1.55rem!important;font-weight:650;letter-spacing:.48em;text-align:center}.card-pin-input:focus{outline:0!important;border-color:#617ceb!important;box-shadow:0 0 0 3px #4f6be21f!important}.card-pin-note{display:flex;grid-column:1/-1;flex-direction:column;gap:3px;padding:11px 12px;border:1px solid #dfe6f4;border-radius:10px;background:#edf3ff}.card-pin-note b{color:#3554ad;font-size:.72rem;font-weight:650}.card-pin-note span{color:#687794;font-size:.7rem;line-height:1.4}.modal-card-pin .modal-actions{margin:18px -22px 0;padding:14px 22px;border-top:1px solid #e0e5ee;background:#fff}.site-list-shell{overflow:hidden;border:1px solid #e1e7f1;border-radius:16px;background:#fff;box-shadow:var(--panel-shadow)}.site-list-table{margin:0;box-shadow:none}.site-list-name{display:flex;align-items:center;gap:11px;min-width:170px}.site-list-name>span{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:linear-gradient(145deg,#edf2ff,#dce6ff);color:#3c5fbd}.site-list-name svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.site-list-name>div{display:flex;flex-direction:column;gap:2px}.site-list-name strong{color:#172442;font-size:.92rem;font-weight:500}.site-list-name small{color:#8a95a8;font-size:.67rem}.site-address{max-width:320px;color:#536078;line-height:1.35}.site-pin-code{display:inline-flex;align-items:center;min-height:27px;padding:4px 10px;border:1px solid #c7d7cd;border-radius:8px;background:#edf7f0;color:#27613c;font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:750;letter-spacing:.14em;box-shadow:inset 0 0 0 1px #fff9}.site-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}td.actions .site-action-button{position:relative;display:grid;place-items:center;width:34px;height:34px;margin:0;padding:0;border:1px solid #dfe5ef;border-radius:9px;background:#fff;color:#63728d;box-shadow:none;transition:.15s}.site-action-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.site-action-button:hover{color:#3157bd!important;border-color:#bdccef!important;background:#f0f4ff!important;transform:translateY(-1px)}.site-action-button.is-danger{color:#a85a59!important}.site-action-button.is-danger:hover{color:#b42318!important;border-color:#edc4c0!important;background:#fff1ef!important}.site-action-button:after{content:attr(data-tooltip);position:absolute;z-index:90;right:0;bottom:calc(100% + 8px);width:max-content;padding:6px 8px;border-radius:7px;background:#172442;color:#fff;font-size:.68rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(3px);transition:.14s}.site-action-button:hover:after,.site-action-button:focus-visible:after{opacity:1;transform:translateY(0)}.worksite-list-shell{overflow:hidden;border:1px solid #e1e7f1;border-radius:16px;background:#fff;box-shadow:var(--panel-shadow)}.worksite-list-table{margin:0;box-shadow:none}.worksite-list-name{display:flex;align-items:center;gap:11px;min-width:210px}.worksite-list-name>span{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:linear-gradient(145deg,#edf2ff,#dce6ff);color:#3c5fbd}.worksite-list-name svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.worksite-list-name>div{display:flex;min-width:0;flex-direction:column;gap:2px}.worksite-list-name strong{color:#172442;font-size:.92rem;font-weight:500}.worksite-list-name small{max-width:260px;overflow:hidden;color:#8a95a8;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.worksite-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}td.actions .worksite-action-button{position:relative;display:grid;place-items:center;width:34px;height:34px;margin:0;padding:0;border:1px solid #dfe5ef;border-radius:9px;background:#fff;color:#63728d;box-shadow:none;transition:.15s}.worksite-action-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.worksite-action-button:hover{color:#3157bd!important;border-color:#bdccef!important;background:#f0f4ff!important;transform:translateY(-1px)}.worksite-action-button.is-danger{color:#a85a59!important}.worksite-action-button.is-danger:hover{color:#b42318!important;border-color:#edc4c0!important;background:#fff1ef!important}.worksite-action-button:after{content:attr(data-tooltip);position:absolute;z-index:90;right:0;bottom:calc(100% + 8px);width:max-content;padding:6px 8px;border-radius:7px;background:#172442;color:#fff;font-size:.68rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(3px);transition:.14s}.worksite-action-button:hover:after,.worksite-action-button:focus-visible:after{opacity:1;transform:translateY(0)}.modal.modal-worksite-editor{width:min(930px,calc(100vw - 32px));max-width:930px;max-height:none;padding:0;overflow:hidden;background:#f4f6fb}.modal-worksite-editor>h3,.modal-worksite-tool>h3,.modal-worksite-qr>h3,.modal-worksite-access>h3{margin:0;padding:20px 24px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-worksite-editor>.modal-form,.modal-worksite-tool>.modal-form,.modal-worksite-qr>.modal-form,.modal-worksite-access>.modal-form{padding:18px 22px 0}.worksite-form-intro,.worksite-tool-intro{display:flex;align-items:center;gap:13px;margin-bottom:13px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:13px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.worksite-form-intro>span,.worksite-tool-intro>span{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:11px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;font-size:.78rem;font-weight:800;box-shadow:0 6px 14px #3454be33}.worksite-form-intro svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.worksite-form-intro strong,.worksite-tool-intro strong{color:#172442;font-size:.9rem;font-weight:650}.worksite-form-intro p,.worksite-tool-intro p{margin:3px 0 0;color:#6f7c93;font-size:.74rem;line-height:1.4}.worksite-form-tabs{display:flex;gap:5px;margin-bottom:12px;padding:5px;border:1px solid #dfe5f0;border-radius:12px;background:#e9edf5}.worksite-form-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;padding:9px;border:0;border-radius:8px;background:transparent;color:#637088;font-size:.78rem;font-weight:550;box-shadow:none}.worksite-form-tabs button:hover{background:#ffffffa3;color:#2f4c9f}.worksite-form-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 3px 10px #1c2f5b1c}.worksite-form-tabs button span,.worksite-panel-heading>span{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:7px;background:#dce4f8;color:#5268a8;font-size:.62rem;font-weight:800}.worksite-form-tabs button[aria-selected=true] span{background:#4d6de2;color:#fff}.worksite-form-panel{min-height:350px;padding:18px;border:1px solid #e2e7f0;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1927480b}.worksite-form-panel[hidden]{display:none!important}.worksite-panel-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:17px;padding-bottom:13px;border-bottom:1px solid #edf0f5}.worksite-panel-heading h4{margin:0;color:#172442;font-size:.94rem;font-weight:650}.worksite-panel-heading p{margin:3px 0 0;color:#7b879b;font-size:.74rem}.worksite-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 17px}.worksite-form-grid .wide{grid-column:1/-1}.worksite-form-grid label{min-width:0;margin:0;color:#44516a;font-size:.78rem;font-weight:550}.worksite-form-grid label em{margin-left:5px;color:#5970bd;font-size:.64rem;font-style:normal;text-transform:uppercase}.worksite-form-grid input,.worksite-form-grid textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.worksite-active-toggle{display:flex!important;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #e0e6f0;border-radius:10px;background:#fafbfe}.worksite-active-toggle input{width:auto;min-height:0;margin:3px 0 0}.worksite-active-toggle span{display:flex;flex-direction:column;gap:2px}.worksite-active-toggle b{color:#283751;font-size:.8rem;font-weight:600}.worksite-active-toggle small{color:#7f8ba0;font-size:.68rem;font-weight:400}.worksite-active-toggle:has(input:checked){border-color:#b7dbc2;background:#edf8f0}.worksite-form-panel.location{padding:12px}.worksite-form-panel.location .location-picker{margin:0}.modal-worksite-editor .modal-actions,.modal-worksite-tool .modal-actions,.modal-worksite-qr .modal-actions,.modal-worksite-access .modal-actions{margin:14px -22px 0;padding:14px 22px;border-top:1px solid #e0e5ee;background:#fff}.modal.modal-worksite-tool{width:min(720px,calc(100vw - 32px));max-width:720px;padding:0;background:#f4f6fb}.worksite-tool-section{padding:14px;border:1px solid #e2e7f0;border-radius:12px;background:#fff}.worksite-tool-section table{margin:0;box-shadow:none;border:1px solid #e7ebf2}.modal.modal-worksite-qr{width:min(760px,calc(100vw - 32px));max-width:760px;padding:0;background:#f4f6fb}.worksite-qr-layout{display:grid;grid-template-columns:280px 1fr;gap:16px;padding:15px;border:1px solid #e2e7f0;border-radius:13px;background:#fff}#qr-target{display:grid;min-height:270px;place-items:center;padding:14px;border:1px solid #e4e9f2;border-radius:12px;background:#fafbfe}.worksite-qr-tools{display:flex;align-items:stretch;flex-direction:column;gap:9px}.worksite-qr-tools label{margin:0;color:#44516a;font-size:.75rem;font-weight:550}.worksite-qr-tools input{width:100%;margin-top:6px;border-radius:6px}.worksite-qr-tools button{width:100%}.worksite-qr-tools small{color:#8a6570;font-size:.68rem;line-height:1.35}.modal.modal-worksite-access{width:min(700px,calc(100vw - 32px));max-width:700px;padding:0;background:#f4f6fb}.worksite-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px;border:1px solid #e2e7f0;border-radius:13px;background:#fff}.worksite-access-option{display:flex!important;align-items:flex-start;gap:9px;margin:0!important;padding:10px;border:1px solid #e1e6ef;border-radius:10px;background:#fafbfe;cursor:pointer}.worksite-access-option:hover{border-color:#bdccef;background:#f3f6ff}.worksite-access-option:has(input:checked){border-color:#aebfed;background:#edf3ff}.worksite-access-option input{margin:3px 0 0}.worksite-access-option span{display:flex;min-width:0;flex-direction:column;gap:2px}.worksite-access-option b{color:#283751;font-size:.78rem;font-weight:550}.worksite-access-option small{color:#8792a5;font-size:.66rem}@media(max-width:720px){.modal.modal-worksite-editor{width:calc(100vw - 18px);max-height:96vh}.worksite-form-grid,.worksite-access-grid,.worksite-qr-layout{grid-template-columns:1fr}.worksite-form-grid .wide{grid-column:auto}.worksite-form-panel{min-height:0}.worksite-qr-layout{max-height:70vh;overflow:auto}}@media(max-width:720px){.modal.modal-site{width:calc(100vw - 18px);max-height:96vh}.modal-site>h3{padding:18px}.modal-site>.modal-form{padding:14px 14px 0}.site-form-panel{min-height:0;padding:15px}.site-form-grid{grid-template-columns:1fr}.site-field-wide{grid-column:auto}.modal-site .modal-actions{margin:14px -14px 0;padding:12px 14px}}.modal.modal-employee-tool{width:min(820px,calc(100vw - 32px));max-width:820px;padding:0;background:#f4f6fb}.modal-employee-tool>h3,.modal-employee-pin>h3{margin:0;padding:20px 24px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-employee-tool>.modal-form,.modal-employee-pin>.modal-form{padding:18px 22px 0}.employee-tool-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:13px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.employee-tool-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:11px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.02em;box-shadow:0 6px 14px #3454be33}.employee-tool-intro strong{color:#172442;font-size:.9rem;font-weight:650}.employee-tool-intro p{margin:3px 0 0;color:#6f7c93;font-size:.74rem;line-height:1.4}.employee-tool-section{margin-bottom:12px;padding:15px;border:1px solid #e2e7f0;border-radius:13px;background:#fff;box-shadow:0 4px 15px #1927480a}.employee-tool-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.employee-tool-heading h4{margin:0;color:#24334f;font-size:.86rem;font-weight:650}.employee-tool-heading>span{display:grid;min-width:24px;height:24px;padding:0 7px;place-items:center;border-radius:999px;background:#e9efff;color:#3e5cba;font-size:.67rem;font-weight:750}.employee-tool-section table{box-shadow:none;border:1px solid #e7ebf2;border-radius:10px}.employee-tool-section .empty{padding:24px;box-shadow:none}.employee-tool-add{background:#fbfcff}.employee-tool-section label{margin:0;color:#44516a;font-size:.76rem;font-weight:550}.employee-tool-section input{width:100%;min-height:38px;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.employee-tool-section label small{display:block;margin-top:5px;color:#8792a5;font-size:.68rem;font-weight:400}.employee-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 15px}.employee-tool-wide{grid-column:1/-1}.employee-tool-section textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff}.driving-license-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.driving-license-card{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid #e2e7f0;border-radius:11px;background:#fafbfe}.driving-license-symbol{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:linear-gradient(145deg,#315dcc,#173d9e);color:#fff;font-size:.65rem;font-weight:800;box-shadow:0 5px 11px #1f439f33}.driving-license-card>div{min-width:0;flex:1}.driving-license-classes{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:4px}.driving-license-classes b{padding:3px 7px;border-radius:6px;background:#e8eefc;color:#3153ad;font-size:.68rem;font-weight:700}.driving-license-card small{color:#748198;font-size:.7rem}.driving-license-card p{margin:4px 0 0;color:#657289;font-size:.7rem}.driving-license-card .employee-action-button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid #ead4d1;border-radius:8px;background:#fff;color:#a85a59}.driving-license-card .employee-action-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.driving-class-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.driving-class-group{margin:0;padding:10px 11px 11px;border:1px solid #e0e6f0;border-radius:10px;background:#fafbfe}.driving-class-group legend{padding:0 5px;color:#67748b;font-size:.68rem;font-weight:650}.driving-class-group>div{display:flex;gap:6px;flex-wrap:wrap}.driving-class-group label{margin:0;cursor:pointer}.driving-class-group input{position:absolute;opacity:0;pointer-events:none}.driving-class-group label span{display:block;padding:6px 9px;border:1px solid #dbe2ee;border-radius:7px;background:#fff;color:#4f5e77;font-size:.72rem;font-weight:650;transition:.15s}.driving-class-group label:hover span{border-color:#b9c8eb;background:#f2f5ff}.driving-class-group label:has(input:checked) span{border-color:#5472de;background:#e8efff;color:#2449aa;box-shadow:0 0 0 2px #5472de1a}.modal-employee-tool .modal-actions,.modal-employee-pin .modal-actions{margin:16px -22px 0;padding:14px 22px;border-top:1px solid #e0e5ee;background:#fff}.emsg-row{margin:8px 0;padding:12px;border:1px solid #e3e8f1;border-radius:11px;background:#fafbfe}.emsg-text,#new-emsg-text{width:100%;min-height:40px;border-radius:7px!important}.emsg-settings{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-top:10px}.emsg-settings label{display:flex;min-width:170px;flex-direction:column}.emsg-settings input[type=datetime-local]{margin-top:4px}.emsg-settings .emsg-active-label{min-width:auto;flex-direction:row;align-items:center;gap:6px;padding-bottom:9px}.emsg-active-label input{width:auto;min-height:0;margin:0}.emsg-spacer{flex:1}.modal.modal-employee-pin{max-width:500px;padding:0;overflow:hidden;background:#f5f7fb}.employee-tool-intro.pin-warning{background:linear-gradient(120deg,#fff4e5,#fffaf4);border-color:#f0d9b7}.pin-warning .employee-tool-icon{background:linear-gradient(145deg,#df9130,#b86a15);box-shadow:0 6px 14px #b86a1533}.employee-pin-warning{padding:14px;border:1px solid #eadfce;border-radius:11px;background:#fff}.employee-pin-warning b{color:#513a20;font-size:.8rem;font-weight:650}.employee-pin-warning p{margin:5px 0 0;color:#7e6d59;font-size:.73rem;line-height:1.45}.employee-pin-result{display:flex;align-items:center;flex-direction:column;padding:5px 0 3px;text-align:center}.employee-pin-result>.employee-tool-icon{margin-bottom:11px;background:linear-gradient(145deg,#42a166,#237746)}.employee-pin-result>strong{color:#193828;font-size:1rem;font-weight:650}.employee-pin-result>p{margin:5px 0 14px;color:#738098;font-size:.75rem}.employee-pin-result output{display:block;width:100%;padding:17px;border:1px solid #cfd9ec;border-radius:11px;background:#fff;color:#182746;font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:1.8rem;font-weight:700;letter-spacing:.24em}.employee-pin-result button{margin-top:10px}.employee-pin-result small{margin-top:11px;color:#8a6570;font-size:.7rem}.employee-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}td.actions .employee-action-button{position:relative;display:grid;place-items:center;width:34px;height:34px;margin:0;padding:0;border:1px solid #dfe5ef;border-radius:9px;background:#fff;color:#63728d;box-shadow:none;transition:color .15s,border-color .15s,background .15s,transform .15s}td.actions .employee-action-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}td.actions .employee-action-button:hover{color:#3157bd;border-color:#bdccef;background:#f0f4ff;transform:translateY(-1px)}td.actions .employee-action-button.is-danger{color:#a85a59}td.actions .employee-action-button.is-danger:hover{color:#b42318;border-color:#edc4c0;background:#fff1ef}td.actions .employee-action-button:after{content:attr(data-tooltip);position:absolute;z-index:90;right:0;bottom:calc(100% + 8px);width:max-content;max-width:190px;padding:6px 8px;border-radius:7px;background:#172442;color:#fff;font-size:.68rem;font-weight:500;line-height:1.2;white-space:nowrap;box-shadow:0 7px 18px #121d3638;opacity:0;pointer-events:none;transform:translateY(3px);transition:opacity .14s,transform .14s}td.actions .employee-action-button:hover:after,td.actions .employee-action-button:focus-visible:after{opacity:1;transform:translateY(0)}.modal-stamps-range{max-width:520px;padding:0;background:#f4f6fb;overflow:hidden}.modal-stamps-range>h3{margin:0;padding:20px 22px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-stamps-range>.employee-tool-intro{margin:18px 20px 12px}.modal-stamps-range>.stamps-range-options{margin:0 20px 16px}.modal-stamps-range>.modal-actions{margin:0;padding:14px 20px;border-top:1px solid #e0e5ee;background:#fff}.stamps-range-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stamps-range-options>button{min-height:88px;border-radius:11px;background:#fff}.stamps-range-options>button:hover{border-color:#6f86dd;background:#f4f7ff}@media(max-width:720px){.modal.modal-employee-tool{width:calc(100vw - 18px)}.employee-tool-grid,.stamps-range-options,.driving-class-groups{grid-template-columns:1fr}.employee-tool-wide{grid-column:auto}.emsg-settings label{min-width:100%}.emsg-settings button{flex:1}}#toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:200}.toast{background:var(--text);color:#fff;padding:12px 18px;border-radius:6px;box-shadow:var(--shadow);max-width:360px;animation:toast-in .2s ease-out}.toast.error{background:var(--danger)}.toast.success{background:var(--success)}@keyframes toast-in{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:720px){#app{flex-direction:column}.sidebar{width:100%;flex-direction:row;align-items:center}.brand{padding:12px 16px}.sidebar{overflow:hidden;border-right:0;border-bottom:1px solid var(--border)}.sidebar-tenant-wrapper,.sidebar-footer{display:none}.sidebar nav{flex-direction:row;padding:0 8px;overflow-x:auto}.sidebar nav .nav-section{flex-direction:row;margin:0}.sidebar nav .nav-label{display:none}.sidebar nav a{white-space:nowrap;border-left:none;border-bottom:3px solid transparent}.sidebar nav a.active{border-left:none;box-shadow:none;border-bottom-color:var(--primary)}.sidebar-footer{padding:8px 12px;flex-direction:row}main{padding:16px}.page-header{min-height:0;padding:22px;border-radius:15px;align-items:flex-start}.page-header button{width:100%}.toolbar{align-items:stretch}}code,.mono{font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;background:var(--bg);padding:1px 6px;border-radius:3px}td code+.muted{display:block;margin-top:2px}.report-page-header{margin-bottom:20px}.report-page-header h2{margin-bottom:2px}.report-page-header p{margin:0}.report-filter-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:18px 20px 8px;margin-bottom:24px}.report-filter-row{margin-bottom:14px}.report-actions-row{padding-top:14px;border-top:1px solid var(--border)}.report-presets{display:flex;flex-direction:column;gap:10px;margin:4px 0 10px;padding-top:4px}.preset-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.preset-label{font-size:13px;color:var(--muted);min-width:160px}.preset-group button.preset{padding:6px 14px;font-size:13px}.report-overview,.report-panel,.report-employees-section{margin-top:24px}.report-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.report-heading h3,.report-section-title h3{margin:0;font-size:18px}.report-heading span{color:var(--muted)}.report-period-badge{background:#e8eeff;color:#244ec4!important;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:650;white-space:nowrap}.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:12px}.report-kpi{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;min-height:112px}.report-kpi.primary{background:linear-gradient(135deg,#285ce5,#477aff);border-color:transparent;color:#fff}.report-kpi>span{color:var(--muted);font-size:12px;font-weight:600}.report-kpi.primary>span,.report-kpi.primary>small{color:#ffffffd1}.report-kpi>strong{font-size:28px;line-height:1.15;margin:8px 0 2px}.report-kpi>small{color:var(--muted)}.report-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:20px}.report-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.report-section-title p{color:var(--muted);margin:3px 0 0;font-size:13px}.report-chart-scroll{overflow-x:auto;padding:16px 2px 2px}.report-daily-chart{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(46px,1fr);align-items:end;min-width:max-content;height:210px;gap:6px;border-bottom:1px solid var(--border)}.report-chart-day{width:54px;height:100%;display:grid;grid-template-rows:22px 1fr 18px 22px;text-align:center;align-items:end}.report-chart-day.weekend{background:#2962ff09}.report-chart-value{font-size:11px;font-weight:650;color:#34445e}.report-chart-track{width:26px;height:100%;margin:0 auto;display:flex;align-items:end;background:#eef1f5;border-radius:5px 5px 0 0;overflow:hidden}.report-chart-track span{display:block;width:100%;min-height:2px;background:linear-gradient(180deg,#5d85ff,#2962ff);border-radius:5px 5px 0 0}.report-chart-day strong{font-size:10px;text-transform:uppercase;color:var(--muted)}.report-chart-day small{font-size:10px;color:var(--muted)}.report-week-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.report-week-card{border:1px solid var(--border);border-radius:9px;padding:13px 15px;display:grid;grid-template-columns:1fr auto;align-items:baseline;background:#fafbfc}.report-week-card span{color:var(--muted);font-size:12px;font-weight:600}.report-week-card strong{font-size:20px}.report-week-card small{grid-column:1 / -1;color:var(--muted);margin-top:5px}.report-employee-list{display:flex;flex-direction:column;gap:10px}.report-employee{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.report-employee[open]{box-shadow:var(--shadow);border-color:#c8d4f5}.report-employee summary{display:grid;grid-template-columns:minmax(220px,1fr) 130px 100px 110px;align-items:center;gap:14px;padding:15px 18px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.report-employee summary::-webkit-details-marker{display:none}.report-employee summary:hover{background:#fafbfc}.report-employee summary>span{display:flex;flex-direction:column}.report-employee summary>span:not(.report-employee-name){text-align:right}.report-employee summary small{color:var(--muted);font-size:11px;font-weight:400}.report-employee-name strong{font-size:15px}.report-expand-label{color:var(--primary);font-size:12px;font-weight:600}.report-employee[open] .report-expand-label:before{content:"Piilota päivät"}.report-employee[open] .report-expand-label{font-size:0}.report-employee[open] .report-expand-label:before{font-size:12px}.report-days-scroll{overflow-x:auto;border-top:1px solid var(--border)}.report-day-grid{display:grid;grid-auto-flow:column;grid-auto-columns:112px;min-width:max-content}.report-day-cell{min-height:132px;padding:10px;border-right:1px solid var(--border);background:#fbfcfd}.report-day-cell.weekend{background:#f2f4f7}.report-day-cell.has-hours{background:#f3f7ff;box-shadow:inset 0 3px 0 var(--primary)}.report-day-cell.has-warning{background:#fff8e5;box-shadow:inset 0 3px 0 var(--warning)}.report-day-date{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.report-day-date strong{text-transform:uppercase}.report-day-hours{font-size:22px;font-weight:700;margin:17px 0 1px}.report-day-times{color:var(--muted);font-size:11px;white-space:nowrap}.report-day-warning{color:var(--warning);font-size:10px;font-weight:650;margin-top:8px}.report-no-hours{padding:10px 16px}@media(max-width:1000px){.report-kpis{grid-template-columns:repeat(2,1fr)}.report-employee summary{grid-template-columns:minmax(180px,1fr) 90px 80px}.report-expand-label{display:none!important}}@media(max-width:720px){.report-filter-panel{padding:14px}.report-filter-row{align-items:stretch}.report-filter-row label{width:100%;justify-content:space-between}.report-filter-row label>select,.report-filter-row label>input{flex:1;min-width:0}.report-actions-row button{flex:1}.preset-label{width:100%;min-width:0}.report-kpis{grid-template-columns:1fr 1fr;gap:8px}.report-kpi{min-height:96px;padding:13px}.report-kpi>strong{font-size:23px}.report-panel{padding:16px 12px}.report-employee summary{grid-template-columns:1fr 72px 62px;padding:13px;gap:8px}.report-heading{align-items:flex-start}}.stamps-range-options{display:flex;flex-direction:column;gap:10px;margin:16px 0}.stamps-range-options>button{padding:14px 16px;text-align:left;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:8px;cursor:pointer;font-size:14px}.stamps-range-options>button:hover{background:var(--bg);border-color:var(--primary)}.stamps-range-options>button strong{display:block;margin-bottom:4px}#login .card,#password-reset .card{background:#ffffffdb;backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border:1px solid rgba(255,255,255,.55);border-radius:16px;box-shadow:0 8px 32px #00000038;padding:40px 36px 30px;max-width:400px;animation:card-in .5s cubic-bezier(.16,1,.3,1) both}@keyframes card-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}#login .card h1,#password-reset .card h1{font-size:32px;letter-spacing:-.02em;margin-bottom:4px}#login .card>p.muted,#password-reset .card>p.muted{margin-bottom:24px}#login .card input,#password-reset .card input{padding:12px 14px;border-radius:10px;font-size:15px;background:#ffffffeb;border:1px solid rgba(31,35,41,.18);transition:border-color .15s ease,box-shadow .15s ease}#login .card input:focus,#password-reset .card input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2962ff2e}#login .card button[type=submit],#password-reset .card button[type=submit]{width:100%;margin-top:8px;padding:13px 18px;border-radius:10px;font-size:15px;font-weight:600;letter-spacing:.01em;background:var(--primary);transition:background .15s ease}#login .card button[type=submit]:hover,#password-reset .card button[type=submit]:hover{background:var(--primary-hover)}#login .card a{color:var(--primary);font-weight:500;text-decoration:none}#login .card a:hover{text-decoration:underline}:root{--shadow: none}.sidebar{background:#f0f2f5}.sidebar nav a{transition:background .12s ease,color .12s ease}.sidebar nav a:hover{background:#0000000d}.sidebar nav a.active{background:#2962ff1a;color:var(--primary);border-left-color:var(--primary)}.sidebar-tenant-select{background:var(--surface)}button{transition:background .15s ease,border-color .15s ease}button.secondary:hover{border-color:#b9bdc6}table{box-shadow:none}th{background:#f0f2f5}tbody tr:hover{background:#f5f7fa}.modal{box-shadow:none;border:1px solid var(--border)}.toast{box-shadow:none}.icon-link{display:inline-flex;vertical-align:-2px;color:var(--primary);margin-left:2px}.icon-link:hover{color:var(--primary-hover)}.warning-banner{background:#fff4d6;border:1px solid #e6c87a;color:#6b4e00;border-radius:8px;padding:12px 16px;margin-bottom:16px}.warning-banner ul{margin:6px 0 0;padding-left:20px}.warning-banner li{margin:2px 0}.project-page-header p{margin:3px 0 0}.project-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:22px}.project-tabs button{color:var(--muted);background:transparent;border-radius:0;border-bottom:3px solid transparent;padding:10px 16px}.project-tabs button:hover{background:var(--bg);color:var(--text)}.project-tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}.project-section-header,.project-calendar-toolbar,.project-calendar-filters{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px}.project-section-header h3,.project-section-header p{margin:0}.project-view-switch,.project-entry-add-buttons{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.project-calendar-heading{display:flex;flex-direction:column;gap:3px}.project-calendar-heading>span{color:#7c889d;font-size:.62rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.project-calendar-heading h3{margin:0;color:#1d2a43;font-size:1.15rem;text-transform:capitalize}.project-view-switch{border:1px solid var(--border);border-radius:7px;overflow:hidden;gap:0}.project-view-switch button{border:0;border-right:1px solid var(--border);border-radius:0}.project-view-switch button:last-child{border-right:0}.project-view-switch button.active{background:var(--primary);color:#fff}.project-time-navigator{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:-4px 0 9px;padding:13px 14px;border:1px solid #dfe5ef;border-radius:13px;background:#fff;box-shadow:0 5px 18px #1927480a}.project-time-today{display:flex;min-height:43px;align-items:center;gap:8px;padding:0 15px;border:1px solid #cfd9ee;border-radius:9px;background:#f3f6ff;color:#3455b7;font-size:.76rem;font-weight:700;box-shadow:none}.project-time-today:hover{border-color:#aebfea;background:#eaf0ff;color:#2448aa}.project-time-today svg,.project-time-stepper button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.project-time-divider{width:1px;height:34px;margin:0 2px 5px;background:#e5e9f1}.project-time-year-field,.project-time-period-field{display:flex;min-width:0;flex-direction:column;gap:5px;margin:0;color:#77849a;font-size:.62rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase}.project-time-year-field{flex:0 0 118px}.project-time-year-field select,.project-time-period-field select,.project-time-period-field input{width:100%;height:43px;min-height:43px;margin:0;border:1px solid #d6deea;border-radius:8px;background:#fff;color:#24334e;font-size:.78rem;font-weight:600;letter-spacing:0;text-transform:none;box-shadow:none}.project-time-year-field select:focus,.project-time-period-field select:focus,.project-time-period-field input:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21c}.project-time-stepper{display:grid;min-width:330px;max-width:540px;flex:1;grid-template-columns:43px minmax(220px,1fr) 43px;align-items:end;gap:6px}.project-time-stepper>button{display:grid;width:43px;height:43px;min-width:43px;padding:0;place-items:center;border-color:#d6deea;background:#fff;color:#4e61a7;box-shadow:none}.project-time-stepper>button:hover{border-color:#b7c5e7;background:#f2f5ff;color:#2e50b1}.project-time-current{display:flex;min-width:190px;flex:1;align-self:stretch;justify-content:center;flex-direction:column;margin-left:auto;padding:6px 13px;border-left:1px solid #e5e9f1}.project-time-current small{color:#8893a5;font-size:.6rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.project-time-current strong{margin-top:3px;color:#25344e;font-size:.8rem;font-weight:650;text-transform:capitalize}.project-period-quick{margin:0 0 14px;padding:7px 8px 8px;border:1px solid #e1e6ef;border-radius:12px;background:#f8f9fc}.project-period-quick>span{display:block;margin:0 2px 5px;color:#8994a6;font-size:.57rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.project-period-strip-shell{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:7px;align-items:stretch;margin:0}.project-period-scroll{min-width:0;padding:0;border-color:#dce1ea;color:#5367d9;background:#fff;font-size:21px}.project-period-strip{display:flex;min-width:0;gap:5px;overflow-x:auto;padding:5px;background:#f3f5f9;border:1px solid #e0e4eb;border-radius:10px;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#c6ccd8 transparent}.project-period-strip::-webkit-scrollbar{height:5px}.project-period-strip::-webkit-scrollbar-thumb{background:#c6ccd8;border-radius:999px}.project-period-strip button{position:relative;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:52px;min-height:64px;padding:6px 8px;color:var(--text);background:#fff;border:1px solid transparent;border-radius:8px;box-shadow:0 1px 2px #1d283f0a}.project-period-strip button:hover{border-color:#aab7e8;background:#f9faff}.project-period-strip button:focus-visible{outline:2px solid #5367f8;outline-offset:1px}.project-period-strip button.has-entries:not(.active){color:#315c40;background:#eef8f1;border-color:#cde4d4;box-shadow:inset 0 -3px #82ba92,0 1px 2px #1d283f0a}.project-period-strip button.has-entries:not(.active):hover{background:#e6f4eb;border-color:#9fcbaa}.project-period-strip button.has-entries:not(.active) small,.project-period-strip button.has-entries:not(.active) b,.project-period-strip button.has-entries:not(.active) strong{color:#315c40}.project-period-entry-dot{position:absolute;right:7px;top:7px;width:6px;height:6px;border-radius:50%;background:#5fa674;box-shadow:0 0 0 2px #5fa67424}.project-period-strip button small{min-height:11px;color:#8590a3;font-size:8px;font-weight:650;text-transform:uppercase}.project-period-day b{color:#657084;font-size:9px;text-transform:uppercase}.project-period-day strong{margin-top:2px;font-size:17px;line-height:1}.project-period-day i{position:absolute;right:6px;bottom:6px;width:5px;height:5px;border-radius:50%;background:#d33c32}.project-period-day.outside:not(.active){opacity:.56;background:#f7f8fa}.project-period-strip button.today{box-shadow:inset 0 0 0 1px #5367f8}.project-period-strip button.holiday strong{color:#b42318}.project-period-strip button.active{color:#fff;background:linear-gradient(145deg,#5367f8,#4055dd);border-color:#4055dd;box-shadow:0 4px 10px #4055dd33}.project-period-strip button.active b,.project-period-strip button.active small,.project-period-strip button.active strong{color:#fff}.project-period-strip button.active i{background:#fff}.project-period-strip button.active .project-period-entry-dot{background:#dff7e6;box-shadow:0 0 0 2px #dff7e633}.project-period-strip.days button.active+button.active{margin-left:-5px;border-left-color:#ffffff47;border-top-left-radius:2px;border-bottom-left-radius:2px}.project-period-strip.days button.active:has(+button.active){border-top-right-radius:2px;border-bottom-right-radius:2px}.project-period-strip.months{gap:7px}.project-period-month{width:112px}.project-period-month strong{margin-top:4px;font-size:13px;text-transform:capitalize}@media(max-width:720px){.project-time-navigator{align-items:stretch;gap:9px;padding:11px}.project-time-divider{display:none}.project-time-today{justify-content:center}.project-time-year-field{flex:1 1 110px}.project-time-stepper{min-width:100%;max-width:none;order:4}.project-time-current{display:none}.project-period-quick{padding:6px}.project-period-strip-shell{grid-template-columns:32px minmax(0,1fr) 32px;gap:5px}}.project-calendar-filters{background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:12px 14px}.project-calendar-filters label{display:flex;align-items:center;gap:8px;margin:0}.project-calendar-filters label select{margin:0;min-width:180px}.project-entry-add-buttons{margin-left:auto}.project-entry-add-buttons button{padding:8px 11px}.project-calendar-kpis{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin-bottom:16px}.project-calendar-kpis>div{background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:12px 15px;display:flex;flex-direction:column}.project-calendar-kpis span{color:var(--muted);font-size:12px}.project-calendar-kpis strong{font-size:20px;margin-top:3px}.project-calendar-kpis.with-attendance{grid-template-columns:repeat(5,minmax(120px,1fr))}.project-calendar-kpis>div.attendance{background:#f1f7f4;border-color:#bcd8ca}#project-calendar{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.project-month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#f0f2f5;border-bottom:1px solid var(--border)}.project-month-weekdays span{padding:8px;text-align:center;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:650}.project-month-grid{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr))}.project-calendar-cell{min-width:0;background:var(--surface);cursor:pointer}.project-month-grid .project-calendar-cell{min-height:132px;padding:7px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.project-month-grid .project-calendar-cell:nth-child(7n){border-right:0}.project-calendar-cell:hover{background:#fafbff}.project-calendar-cell.outside{background:#f7f8fa;color:var(--muted)}.project-calendar-cell.today{box-shadow:inset 0 0 0 2px var(--primary)}.project-calendar-cell.month-boundary{border-top:3px solid #6c7cff;padding-top:5px}.project-month-boundary-label{display:flex;align-items:center;gap:6px;margin:-1px 0 5px;color:#3f51d7;font-size:10px;line-height:1;text-transform:capitalize}.project-month-boundary-label i{width:13px;height:2px;flex:0 0 auto;border-radius:999px;background:linear-gradient(90deg,#5367f8,#9a7bff)}.project-month-boundary-label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-calendar-date{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.project-calendar-date span{display:none;color:var(--muted);font-size:10px;text-transform:uppercase}.project-calendar-date em{min-width:0;margin-left:4px;overflow:hidden;color:#b42318;font-size:9px;font-style:normal;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.project-calendar-date strong{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;font-size:12px}.project-calendar-cell.today .project-calendar-date strong{background:var(--primary);color:#fff}.project-calendar-cell.holiday{background:snow}.project-calendar-cell.holiday .project-calendar-date strong{color:#b42318;background:#feeceb}.project-calendar-cell.today.holiday .project-calendar-date strong{color:#fff;background:var(--primary)}.project-calendar-cell-entries{display:flex;flex-direction:column;gap:3px}.project-cal-entry{display:flex;width:100%;align-items:flex-start;gap:7px;text-align:left;color:var(--text);border:1px solid transparent;border-radius:6px;padding:7px 8px;background:#edf3ff;min-width:0}.project-cal-entry:hover{filter:brightness(.97)}.project-cal-entry.compact{padding:3px 5px;font-size:10px;gap:4px}.project-cal-entry.type-time,.type-time{background:#e8efff;color:#244eb5}.project-cal-entry.type-visit,.type-visit{background:#e2f4ed;color:#176b4e}.project-cal-entry.type-travel,.type-travel{background:#fff1dc;color:#985a00}.project-cal-entry.type-expense,.type-expense{background:#f2e8ff;color:#6a36a0}.project-entry-icon{flex:0 0 auto;font-weight:700}.project-entry-main{display:flex;flex-direction:column;min-width:0}.project-entry-main strong,.project-entry-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-entry-main strong{font-size:11px}.project-entry-main small{opacity:.75;margin-top:2px}.project-more{color:var(--muted);padding:2px 5px}.project-attendance-summary{display:flex;align-items:center;gap:5px;padding:4px 6px;color:#4f806a;background:#edf8f2;border:1px solid #c8e5d6;border-radius:5px;font-size:10px}.project-attendance-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-time-calendar{min-width:calc(74px + var(--day-count) * 150px)}.project-time-help{display:flex;justify-content:space-between;gap:12px;padding:9px 14px;color:#244eb5;background:#edf3ff;border-bottom:1px solid #d9e4ff;font-size:12px;font-weight:600}.project-time-legend{display:flex;align-items:center;gap:6px;color:#516078}.project-time-legend i{width:18px;height:10px;margin-left:8px;border-radius:3px}.project-time-legend i:first-child{margin-left:0}.project-time-legend i.project{background:#e8efff;border:1px solid #718ee8}.project-time-legend i.attendance{background:#e1f2e9;border:1px solid #72af91}.project-time-header{display:grid;grid-template-columns:74px repeat(var(--day-count),minmax(150px,1fr));background:#f5f6f8;border-bottom:1px solid var(--border)}.project-time-header-gutter{padding:11px 10px;color:var(--muted);font-size:11px;text-align:right}.project-time-day-header{display:flex;justify-content:center;gap:7px;padding:11px;border-left:1px solid var(--border);text-transform:uppercase}.project-time-day-header span{color:var(--muted)}.project-time-day-header.today{color:var(--primary);background:#eef3ff}.project-time-day-header small{overflow:hidden;color:#b42318;font-size:9px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.project-time-day-header.holiday{background:#fff2f1}.project-time-day-header.month-boundary{position:relative;border-left:3px solid #6c7cff;padding-top:27px}.project-time-month-label{position:absolute;top:6px;left:8px;padding:3px 7px;border-radius:999px;color:#3f51d7;background:#eef0ff;font-size:9px;line-height:1;text-transform:capitalize;white-space:nowrap}.project-untimed-entries{display:grid;grid-template-columns:74px 1fr;border-bottom:1px solid var(--border)}.project-untimed-entries>span{padding:10px 8px;color:var(--muted);font-size:10px;text-align:right}.project-untimed-days{display:grid;grid-template-columns:repeat(var(--day-count),minmax(150px,1fr));min-width:0}.project-untimed-day{display:flex;min-width:0;flex-direction:column;gap:4px;padding:6px;border-left:1px solid var(--border);background:#fff}.project-untimed-day:not(.has-entries){min-height:45px;background:#fbfcfe}.project-untimed-day .project-cal-entry{width:100%;min-width:0}.project-time-scroll{max-height:620px;overflow-y:auto;overscroll-behavior:contain}.project-time-body{position:relative;display:grid;grid-template-columns:74px 1fr;height:1248px}.project-time-labels{position:relative;color:var(--muted);font-size:10px}.project-time-labels span{position:absolute;right:10px;transform:translateY(-50%)}.project-time-labels span:first-child{transform:translateY(2px)}.project-time-lanes{display:grid;grid-template-columns:repeat(var(--day-count),minmax(150px,1fr))}.project-time-lane{position:relative;min-width:0;border-left:1px solid var(--border);cursor:crosshair;-webkit-user-select:none;user-select:none;touch-action:none;background-color:#fff;background-image:repeating-linear-gradient(to bottom,#e2e6eb 0,#e2e6eb 1px,transparent 1px,transparent 13px,#f0f2f5 13px,#f0f2f5 14px,transparent 14px,transparent 26px,#f0f2f5 26px,#f0f2f5 27px,transparent 27px,transparent 39px,#f0f2f5 39px,#f0f2f5 40px,transparent 40px,transparent 52px)}.project-time-lane.month-boundary{border-left:3px solid #6c7cff}.project-time-lane.today{background-color:#fbfcff}.project-time-lane:hover{background-color:#f8faff}.project-time-entry{position:absolute;z-index:2;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;min-height:13px;padding:7px 8px;border:1px solid color-mix(in srgb,currentColor 72%,transparent);border-left-width:3px;border-radius:7px;text-align:left;line-height:1.25;box-shadow:0 2px 8px #1d34730f;transition:border-color .15s,box-shadow .15s,filter .15s}.project-time-entry:hover,.project-time-entry:focus-visible{z-index:5;filter:none;border-color:currentColor;box-shadow:0 7px 18px #1d347326}.project-time-entry.type-time{background:linear-gradient(to bottom,#e8efff 0,#e8efff 62px,#e8efffad 62px,#e8efff85)}.project-time-entry.type-time:after{position:absolute;right:5px;bottom:5px;padding:2px 5px;border:1px solid rgba(83,104,170,.18);border-radius:999px;background:#ffffffe6;color:#5368aa;font-size:8px;font-weight:700;content:attr(data-end-time)}.project-time-entry>strong,.project-time-entry>span,.project-time-entry>small,.project-time-entry>em{position:relative;z-index:1}.project-time-entry strong{font-size:10px}.project-time-entry span{margin-top:2px;font-weight:650}.project-time-entry span,.project-time-entry small{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.project-time-entry small{opacity:.75}.project-time-entry-label{display:flex;min-height:0;flex-direction:column}.project-time-entry-label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-time-entry em{align-self:flex-start;margin-top:5px;padding:2px 5px;border-radius:999px;background:#fffc;color:#5269ae;font-size:8px;font-style:normal;font-weight:750}.project-time-attendance-summary{position:absolute;z-index:2;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;min-height:13px;padding:7px;color:#276849;border:1px solid #72af91;border-left-width:3px;border-radius:7px;background:linear-gradient(to bottom,#e1f2e9 0,#e1f2e9 62px,#e1f2e9b8 62px,#e1f2e994);box-shadow:0 2px 8px #2768490f;pointer-events:none}.project-time-attendance-summary:after{position:absolute;right:5px;bottom:5px;padding:2px 5px;border:1px solid rgba(39,104,73,.16);border-radius:999px;background:#ffffffe6;color:#39765a;font-size:8px;font-weight:700;content:attr(data-end-time)}.project-time-attendance-summary strong,.project-time-attendance-summary span,.project-time-attendance-summary small{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-time-attendance-summary strong{font-size:9px;text-transform:uppercase;letter-spacing:.03em}.project-time-attendance-summary span{margin-top:3px;font-size:10px;font-weight:750}.project-time-attendance-summary small{margin-top:2px;font-size:8px;opacity:.78}.project-time-attendance-label{display:flex;min-height:0;flex-direction:column}.project-time-attendance-summary.warning{color:#8a4b00;border-color:#c27a20;background:repeating-linear-gradient(135deg,#fff0d5 0,#fff0d5 6px,#fff8e9 6px,#fff8e9 12px)}.project-time-calendar.compact-week .project-time-entry,.project-time-calendar.compact-week .project-time-attendance-summary{align-items:center;padding:6px 4px}.project-time-calendar.compact-week .project-time-entry>strong,.project-time-calendar.compact-week .project-time-attendance-summary>strong{align-self:center;width:auto;padding:2px 3px;border-radius:4px;background:#ffffffd1;font-size:8px;line-height:1}.project-time-calendar.compact-week .project-time-entry-label,.project-time-calendar.compact-week .project-time-attendance-label{width:auto;max-height:calc(100% - 58px);align-self:center;flex-direction:row;gap:5px;margin:6px 0 3px;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg)}.project-time-calendar.compact-week .project-time-entry-label b,.project-time-calendar.compact-week .project-time-entry-label small,.project-time-calendar.compact-week .project-time-attendance-label b,.project-time-calendar.compact-week .project-time-attendance-label small{width:auto;max-height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-time-calendar.compact-week .project-time-entry-label b,.project-time-calendar.compact-week .project-time-attendance-label b{font-size:9px;letter-spacing:.01em}.project-time-calendar.compact-week .project-time-entry-label small,.project-time-calendar.compact-week .project-time-attendance-label small{margin:0;font-size:8px}.project-time-calendar.compact-week .project-time-entry em{align-self:center;margin-top:auto;padding:2px 4px;font-size:7px}.project-time-selection{position:absolute;z-index:3;left:3px;right:3px;min-height:13px;padding:3px 6px;color:#fff;background:#2f67f6d1;border:1px solid #174dd4;border-radius:5px;box-shadow:0 2px 8px #1e49b03d;font-size:10px;font-weight:700;pointer-events:none}.project-day-detail-modal{max-width:980px;overflow:hidden}.project-day-detail-modal .modal-form{min-width:0}.project-day-detail-modal .project-day-modal-grid{overflow:hidden;border:1px solid var(--border);border-radius:9px}.project-day-detail-modal .project-time-scroll{max-height:min(590px,62vh)}.project-day-modal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:var(--muted);font-size:12px}.project-day-modal-toolbar>div{display:flex;gap:6px;flex-wrap:wrap}.project-day-modal-toolbar button{padding:7px 10px}.modal.modal-project-entry{width:min(860px,calc(100vw - 32px));max-width:860px;max-height:94vh;padding:0;overflow:hidden;background:#f4f6fb}.modal-project-entry>h3{margin:0;padding:22px 26px 18px;border-bottom:1px solid #e4e9f2;background:#fff;color:#172442;font-size:1.22rem}.modal-project-entry>.modal-form{display:flex;flex-direction:column;padding:18px 24px 0;overflow:auto}.project-entry-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:14px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.project-entry-intro>span{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be38}.project-entry-intro svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.project-entry-intro strong{color:#172442;font-size:.96rem;font-weight:650}.project-entry-intro p{margin:3px 0 0;color:#66748d;font-size:.76rem;line-height:1.4}.project-entry-type-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:12px}.project-entry-type-picker label{min-width:0;margin:0}.project-entry-type-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.project-entry-type-picker span{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;align-items:center;min-height:60px;padding:9px 11px;border:1px solid #dfe4ed;border-radius:11px;background:#fff;color:#536078;cursor:pointer;box-shadow:0 3px 10px #19274806;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s}.project-entry-type-picker span:hover{border-color:#bdc9e8;background:#fbfcff;transform:translateY(-1px)}.project-entry-type-picker i{grid-row:1/3;display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:#edf1fa;color:#5267a8;font-size:.9rem;font-style:normal;font-weight:800}.project-entry-type-picker b{overflow:hidden;color:#263550;font-size:.79rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.project-entry-type-picker small{overflow:hidden;color:#8791a2;font-size:.62rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.project-entry-type-picker input:focus-visible+span{outline:0;box-shadow:0 0 0 3px #4f6be229}.project-entry-type-picker input:checked+span{border-color:#6680e7;background:#f3f6ff;box-shadow:0 5px 14px #2e4aa61c}.project-entry-type-picker input:checked+span i{background:#4f6ce2;color:#fff}.project-entry-type-picker input:checked+span b{color:#294cae}.project-entry-type-picker input:checked+.type-travel{border-color:#d6ad62;background:#fff9ee}.project-entry-type-picker input:checked+.type-travel i{background:#c98b27}.project-entry-type-picker input:checked+.type-travel b{color:#8c5b0d}.project-entry-type-picker input:checked+.type-expense{border-color:#cdb9eb;background:#faf6ff}.project-entry-type-picker input:checked+.type-expense i{background:#8259c3}.project-entry-type-picker input:checked+.type-expense b{color:#6840a4}.project-entry-section{margin-bottom:11px;padding:15px 16px;border:1px solid #e2e7f0;border-radius:14px;background:#fff;box-shadow:0 4px 15px #19274809}.project-entry-section.hidden{display:none!important}.project-entry-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:13px;padding-bottom:11px;border-bottom:1px solid #edf0f5}.project-entry-heading>span{display:grid;width:27px;height:27px;flex:0 0 27px;place-items:center;border-radius:8px;background:#e9efff;color:#3d5dc1;font-size:.63rem;font-weight:800}.project-entry-heading h4{margin:0;color:#172442;font-size:.88rem;font-weight:650}.project-entry-heading p{margin:2px 0 0;color:#7b879b;font-size:.68rem;line-height:1.35}.project-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 14px}.project-entry-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.project-entry-grid .wide{grid-column:1/-1}.project-entry-grid label{min-width:0;margin:0;color:#44516a;font-size:.75rem;font-weight:550}.project-entry-grid input,.project-entry-grid select,.project-entry-grid textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none;transition:border-color .16s,box-shadow .16s}.project-entry-grid input,.project-entry-grid select{min-height:40px}.project-entry-grid textarea{min-height:72px;resize:vertical}.project-entry-grid input:focus,.project-entry-grid select:focus,.project-entry-grid textarea:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.project-entry-grid input::placeholder,.project-entry-grid textarea::placeholder{color:#a2aabc}.project-entry-billable{display:flex!important;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #e0e6f0;border-radius:10px;background:#fafbfe;cursor:pointer}.project-entry-billable input{width:auto;min-height:0;margin:3px 0 0;flex:0 0 auto}.project-entry-billable span{display:flex;flex-direction:column;gap:2px}.project-entry-billable b{color:#283751;font-size:.78rem;font-weight:600}.project-entry-billable small{color:#7f8ba0;font-size:.66rem;font-weight:400;line-height:1.35}.project-entry-billable:has(input:checked){border-color:#b7dbc2;background:#edf8f0}.project-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.project-form-grid label{min-width:0}.project-modal-delete{display:flex;align-items:center;justify-content:center;gap:7px;margin-right:auto}.project-modal-delete svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.modal-project-entry .modal-actions{position:sticky;bottom:0;z-index:2;margin:4px -24px 0;padding:15px 24px;border-top:1px solid #dde3ed;background:#fff;box-shadow:0 -8px 22px #1927480b}.modal-project-entry .modal-actions button{min-width:128px}@media(max-width:720px){.modal.modal-project-entry{width:calc(100vw - 18px);max-height:96vh}.modal-project-entry>h3{padding:18px}.modal-project-entry>.modal-form{padding:14px 14px 0}.project-entry-intro{align-items:flex-start;padding:12px}.project-entry-type-picker{grid-template-columns:1fr}.project-entry-section{padding:14px}.project-entry-grid,.project-entry-grid.three{grid-template-columns:1fr}.project-entry-grid .wide{grid-column:auto}.modal-project-entry .modal-actions{margin:4px -14px 0;padding:12px 14px}.modal-project-entry .modal-actions button{min-width:0}}.modal.modal-project-customer{width:min(900px,calc(100vw - 32px));max-width:900px;max-height:94vh;padding:0;overflow:hidden;background:#f4f6fb}.modal-project-customer>h3{margin:0;padding:22px 26px 18px;border-bottom:1px solid #e4e9f2;background:#fff;color:#172442;font-size:1.22rem}.modal-project-customer>.modal-form{display:flex;flex-direction:column;padding:18px 24px 0;overflow:auto}.project-customer-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:14px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.project-customer-intro>span{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be38}.project-customer-intro svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.project-customer-intro strong{color:#172442;font-size:.96rem;font-weight:650}.project-customer-intro p{margin:3px 0 0;color:#66748d;font-size:.78rem;line-height:1.4}.project-customer-tabs{display:flex;gap:5px;margin:0 0 12px;padding:5px;border:1px solid #dfe5f0;border-radius:12px;background:#e9edf5}.project-customer-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;flex:1;padding:9px;border:0;border-radius:8px;background:transparent;color:#637088;font-size:.78rem;font-weight:550;box-shadow:none}.project-customer-tabs button:hover{background:#ffffffa3;color:#2f4c9f}.project-customer-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 3px 10px #1c2f5b1c}.project-customer-tabs button span{display:grid;width:25px;height:25px;flex:0 0 25px;place-items:center;border-radius:7px;background:#dce4f8;color:#5268a8;font-size:.62rem;font-weight:800}.project-customer-tabs button[aria-selected=true] span{background:#4d6de2;color:#fff}.project-customer-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-customer-section{min-height:390px;padding:17px;border:1px solid #e2e7f0;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1927480b}.project-customer-panel[hidden]{display:none!important}.project-customer-section-wide{grid-column:1/-1}.project-customer-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #edf0f5}.project-customer-heading>span{display:grid;width:27px;height:27px;flex:0 0 27px;place-items:center;border-radius:8px;background:#e9efff;color:#3d5dc1;font-size:.64rem;font-weight:800}.project-customer-heading h4{margin:0;color:#172442;font-size:.9rem;font-weight:650}.project-customer-heading p{margin:3px 0 0;color:#7b879b;font-size:.7rem;line-height:1.35}.project-customer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.project-customer-grid .wide{grid-column:1/-1}.project-customer-grid label{min-width:0;margin:0;color:#44516a;font-size:.76rem;font-weight:550}.project-customer-grid label em{margin-left:5px;color:#7382a0;font-size:.61rem;font-style:normal;font-weight:650;letter-spacing:.035em;text-transform:uppercase}.project-customer-grid input,.project-customer-grid select,.project-customer-grid textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none;transition:border-color .16s,box-shadow .16s}.project-customer-grid input,.project-customer-grid select{min-height:39px}.project-customer-grid textarea{min-height:63px;resize:vertical}.project-customer-grid input:focus,.project-customer-grid select:focus,.project-customer-grid textarea:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.project-customer-grid input::placeholder,.project-customer-grid textarea::placeholder{color:#a2aabc}.project-customer-grid label>small{display:block;margin-top:5px;color:#8792a5;font-size:.67rem;font-weight:400;line-height:1.35}.project-customer-grid [data-einvoice][hidden]{display:none!important}.project-customer-active{display:flex!important;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #e0e6f0;border-radius:10px;background:#fafbfe;cursor:pointer}.project-customer-active input{width:auto;min-height:0;margin:3px 0 0;flex:0 0 auto}.project-customer-active span{display:flex;flex-direction:column;gap:2px}.project-customer-active b{color:#283751;font-size:.79rem;font-weight:600}.project-customer-active small{color:#7f8ba0;font-size:.67rem;font-weight:400;line-height:1.35}.project-customer-active:has(input:checked){border-color:#b7dbc2;background:#edf8f0}.modal-project-customer .modal-actions{margin:14px -24px 0;padding:15px 24px;border-top:1px solid #dde3ed;background:#fff;box-shadow:0 -8px 22px #1927480b}.modal-project-customer .modal-actions button{min-width:128px}@media(max-width:720px){.modal.modal-project-customer{width:calc(100vw - 18px);max-height:96vh;overflow-y:auto}.modal-project-customer>h3{padding:18px}.modal-project-customer>.modal-form{padding:14px 14px 0;overflow:visible}.project-customer-tabs{overflow-x:auto;justify-content:flex-start}.project-customer-tabs button{min-width:132px;flex:0 0 auto}.project-customer-layout,.project-customer-grid{grid-template-columns:1fr}.project-customer-section-wide,.project-customer-grid .wide{grid-column:auto}.project-customer-section{min-height:0;padding:15px}.modal-project-customer .modal-actions{margin:14px -14px 0;padding:12px 14px}}.report-mode-tabs{display:flex;gap:4px;margin-bottom:18px;border-bottom:1px solid var(--border)}.report-mode-tabs button{padding:10px 15px;color:var(--muted);background:transparent;border-radius:0;border-bottom:3px solid transparent}.report-mode-tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}.project-report-filter select{min-width:190px}.project-report-kpis{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:10px;margin:16px 0}.project-report-kpis>div{display:flex;flex-direction:column;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:9px}.project-report-kpis>div.primary{color:#fff;background:linear-gradient(135deg,#315fe8,#2349b8);border-color:transparent}.project-report-kpis>div.warning{background:#fff4f2;border-color:#f5b4aa}.project-report-kpis span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.03em}.project-report-kpis .primary span,.project-report-kpis .primary small{color:#dfe7ff}.project-report-kpis strong{margin:4px 0 2px;font-size:21px}.project-report-kpis small{color:var(--muted)}.project-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-report-grid.wide-first{grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr)}.project-report-bar-row{display:grid;grid-template-columns:minmax(100px,160px) 1fr 72px;align-items:center;gap:9px;margin:9px 0}.project-report-bar-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.project-report-bar-row>div{overflow:hidden;height:11px;background:#edf0f4;border-radius:6px}.project-report-bar-row i{display:block;height:100%;min-width:2px;background:linear-gradient(90deg,#5b82f7,#315fe8);border-radius:inherit}.project-report-bar-row strong{text-align:right;font-size:12px}.project-report-daily-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:4px}.project-report-daily{display:flex;align-items:stretch;gap:4px;min-width:max-content;height:220px;padding-top:24px}.project-report-day{display:grid;grid-template-rows:18px 1fr 20px;width:34px;text-align:center}.project-report-day>span{color:var(--muted);font-size:9px}.project-report-day>div{position:relative;background:linear-gradient(to top,transparent,#f6f8fb);border-bottom:1px solid var(--border)}.project-report-day i{position:absolute;right:6px;bottom:0;left:6px;background:#3968ee;border-radius:4px 4px 0 0}.project-report-day small{padding-top:5px;color:var(--muted);font-size:9px;transform:rotate(-35deg)}.project-target-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}.project-target-card{display:grid;grid-template-columns:1fr auto;gap:7px 12px;padding:13px;border:1px solid var(--border);border-radius:8px}.project-target-card.over{background:#fff6f5;border-color:#ef9b8d}.project-target-card>div:first-child{display:flex;flex-direction:column;min-width:0}.project-target-card>div:first-child span{color:var(--muted);font-size:10px}.project-target-card>div:first-child strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-target-values{display:flex;align-items:baseline;gap:3px}.project-target-values span,.project-target-card small{color:var(--muted);font-size:10px}.project-target-track{grid-column:1 / -1;overflow:hidden;height:8px;background:#e9edf2;border-radius:5px}.project-target-track i{display:block;height:100%;background:#3c6bed;border-radius:inherit}.project-target-card.over .project-target-track i{background:#dc4838}.project-target-card>small{grid-column:1 / -1}.report-table-scroll{overflow-x:auto}.report-table-scroll table{min-width:620px}.report-over-value{color:#c83225;font-weight:700}@media(max-width:1100px){.project-report-kpis{grid-template-columns:repeat(3,1fr)}.project-report-grid,.project-report-grid.wide-first{grid-template-columns:1fr}}.project-card-list{display:grid;gap:14px}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:18px}.project-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.project-card header h3{margin:2px 0 0}.project-card>p{color:var(--muted)}.project-card-stats{display:flex;gap:24px;flex-wrap:wrap;background:var(--bg);border-radius:7px;padding:10px 13px;margin:13px 0}.project-card-stats span{color:var(--muted);font-size:12px}.project-card-stats strong{color:var(--text);margin-right:3px}.project-work-list{display:grid;gap:9px;border-top:1px solid var(--border);padding-top:10px}.project-work-group{overflow:hidden;border:1px solid #dfe4ea;border-radius:8px;background:#fff}.project-work-item{display:grid;grid-template-columns:105px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:7px 12px;border-bottom:1px solid #edf0f3}.project-work-list>.project-work-item{border:1px solid #e4e8ed;border-radius:8px}.project-work-item.phase{background:#f5f7fb}.project-work-item.nested{margin:0;padding-left:32px}.project-work-children{position:relative;padding-left:18px;background:#fff}.project-work-children:before{content:"";position:absolute;top:0;bottom:0;left:17px;width:3px;background:#dbe5ff}.project-work-children>.project-work-item:last-child{border-bottom:0}.project-work-children>.project-work-group{border-width:0 0 1px;border-radius:0}.project-work-kind{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:700}.project-work-name{display:flex;flex-direction:column}.project-work-name small{color:var(--muted)}.project-work-actions{display:flex;align-items:center;gap:5px}.project-icon-action{display:grid;width:34px;height:34px;min-width:34px;padding:0;place-items:center;border:1px solid #dbe2ee;border-radius:9px;background:#fff;color:#5d6d88;box-shadow:0 2px 7px #1e2c4e0b;transition:color .16s,border-color .16s,background .16s,box-shadow .16s,transform .16s}.project-icon-action svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.project-icon-action:hover{border-color:#b9c8ed;background:#f1f5ff;color:#3158bd;box-shadow:0 4px 10px #2b48971a;transform:translateY(-1px)}.project-icon-action:focus-visible{outline:2px solid #5367f8;outline-offset:2px}.project-icon-action.danger{border-color:#efd8d5;background:snow;color:#ad5750}.project-icon-action.danger:hover{border-color:#e5aaa4;background:#fff0ee;color:#b42318}.project-card footer{display:grid;grid-template-columns:auto auto 1fr auto auto;gap:7px;margin-top:14px}.project-card footer button{padding:7px 11px;font-size:12px}.project-section-eyebrow{display:block;margin-bottom:5px;color:#536fe1;font-size:10px;font-weight:800;letter-spacing:.13em}.project-portfolio-heading,.project-overview-heading{margin-bottom:14px}.project-overview-heading{padding:18px 20px;border:1px solid #dce4f4;border-radius:14px;background:linear-gradient(125deg,#fff,#f1f5ff)}.project-overview-heading h3,.project-portfolio-heading h3{margin:2px 0 4px;color:#182541;font-size:1.35rem}.project-overview-heading p{margin:0;color:#6f7d94}.project-portfolio-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:11px;margin-bottom:14px}.project-portfolio-kpis article{display:flex;min-height:105px;flex-direction:column;padding:16px 17px;border:1px solid #e0e5ef;border-radius:13px;background:#fff;box-shadow:0 6px 18px #1b27470b}.project-portfolio-kpis article.accent{color:#fff;border-color:transparent;background:linear-gradient(145deg,#253b79,#4f6cf4)}.project-portfolio-kpis span{color:#718099;font-size:10px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.project-portfolio-kpis strong{margin:8px 0 3px;font-size:1.45rem;letter-spacing:-.025em}.project-portfolio-kpis small{color:#8a95a8;font-size:10px}.project-portfolio-kpis .accent span,.project-portfolio-kpis .accent small{color:#dce4ff}.project-card-rich{position:relative;overflow:hidden;padding:0;border-radius:15px;box-shadow:0 8px 24px #1b27470e}.project-card-rich:before{position:absolute;top:0;right:0;left:0;height:4px;background:var(--project-color);content:""}.project-card-rich>header{padding:20px 20px 0}.project-card-rich>p{margin:13px 20px;color:#6a778e;font-size:12px;line-height:1.5}.project-card-title{display:flex;align-items:flex-start;gap:12px}.project-card-title>i{width:12px;height:38px;flex:0 0 12px;border-radius:5px;background:var(--project-color);box-shadow:0 5px 11px color-mix(in srgb,var(--project-color) 28%,transparent)}.project-card-title small{color:#8590a2;font-size:10px}.project-card-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.project-priority{padding:5px 8px;border-radius:999px;background:#f0f2f6;color:#68758a;font-size:9px;font-weight:750;text-transform:uppercase}.project-priority.priority-high{background:#fff0db;color:#9a6006}.project-priority.priority-critical{background:#ffe9e7;color:#b22f25}.project-priority.priority-low{background:#eef7f2;color:#347458}.project-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 20px 12px}.project-health-grid>div{display:grid;grid-template-columns:1fr auto;gap:7px 10px;padding:11px 12px;border:1px solid #e5e9f1;border-radius:10px;background:#fafbfe}.project-health-grid span{color:#7c879a;font-size:9px;font-weight:750;letter-spacing:.045em;text-transform:uppercase}.project-health-grid strong{color:#27354e;font-size:12px}.project-health-grid strong small{color:#8993a5;font-size:9px;font-weight:500}.project-health-grid i{grid-column:1/-1;overflow:hidden;height:5px;border-radius:999px;background:#e6eaf2}.project-health-grid i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--project-color),#7990f6)}.project-health-grid .warning{border-color:#f0c2bc;background:#fff7f5}.project-health-grid .warning i b{background:#d85448}.project-card-rich .project-card-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;border-block:1px solid #e7eaf0;border-radius:0;background:#f7f8fb;padding:0 20px}.project-card-rich .project-card-stats span{display:flex;min-width:0;flex-direction:column;gap:3px;padding:11px 13px;border-right:1px solid #e1e5ec}.project-card-rich .project-card-stats span:first-child{padding-left:0}.project-card-rich .project-card-stats span:last-child{border-right:0}.project-card-rich .project-card-stats small{overflow:hidden;color:#8792a4;font-size:9px;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}.project-card-rich .project-card-stats strong{overflow:hidden;color:#27344b;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.project-card-rich .project-card-stats strong.overdue{color:#bb382f}.project-card-rich .project-work-list{margin:0 20px;padding-top:14px}.project-timeline{margin:14px 20px 0;padding:13px 14px;border:1px solid #e2e7f0;border-radius:11px;background:#fbfcff}.project-timeline>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.project-timeline>header div{display:flex;align-items:baseline;gap:8px}.project-timeline>header strong{color:#26354e;font-size:11px}.project-timeline>header small,.project-timeline>header span{color:#8792a5;font-size:9px}.project-timeline-row{display:grid;grid-template-columns:minmax(90px,160px) 1fr 42px;align-items:center;gap:9px;min-height:23px}.project-timeline-row>span{overflow:hidden;color:#59677e;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.project-timeline-row>div{position:relative;height:8px;border-radius:999px;background:repeating-linear-gradient(90deg,#edf0f5 0,#edf0f5 calc(25% - 1px),#dfe4ec calc(25% - 1px),#dfe4ec 25%)}.project-timeline-row i{position:absolute;top:0;height:8px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--project-color) 28%,#eef2ff)}.project-timeline-row i:after{display:block;width:var(--progress);height:100%;border-radius:inherit;background:var(--project-color);content:""}.project-timeline-row i.milestone{width:8px!important;transform:rotate(45deg);border-radius:2px;background:var(--project-color)}.project-timeline-row i.milestone:after{display:none}.project-timeline-row>small{color:#8490a3;font-size:9px;text-align:right}.project-work-item{grid-template-columns:105px minmax(170px,1fr) minmax(150px,220px) auto}.project-work-item.milestone{border-color:#e0d4f6;background:#faf7ff}.project-work-progress{display:flex;min-width:0;flex-direction:column;gap:4px}.project-work-progress>i{overflow:hidden;width:100%;height:5px;border-radius:999px;background:#e8ebf1}.project-work-progress>i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4f6cf4,#778bf2)}.project-work-progress small{color:#7c8799;font-size:9px;text-align:right}.project-card-rich footer{grid-template-columns:auto auto auto auto 1fr auto;margin:15px 0 0;padding:13px 20px;border-top:1px solid #e5e9ef;background:#fbfcfe}.project-card-footer-actions{display:flex;align-items:center;gap:6px}.project-card footer .project-icon-action{width:36px;height:36px;min-width:36px;padding:0}.danger-soft{color:#ad3d37!important;border-color:#eed4d1!important;background:#fff9f8!important}.modal.modal-project-editor{width:min(920px,calc(100vw - 32px));max-width:920px;max-height:94vh;padding:0;overflow:hidden;background:#f4f6fb}.modal-project-editor>h3{margin:0;padding:22px 26px 18px;border-bottom:1px solid #e4e9f2;background:#fff;color:#172442;font-size:1.22rem}.modal-project-editor>.modal-form{display:flex;flex-direction:column;padding:18px 24px 0;overflow:auto}.project-editor-intro,.work-item-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:14px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.project-editor-intro>span,.work-item-intro>span{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:12px;background:var(--project-color,#4f6cf4);color:#fff;font-size:17px;font-weight:800;box-shadow:0 6px 14px #3454be38}.project-editor-intro strong,.work-item-intro strong{color:#172442;font-size:.96rem;font-weight:650}.project-editor-intro p,.work-item-intro p{margin:3px 0 0;color:#66748d;font-size:.75rem}.project-editor-tabs{display:flex;gap:5px;margin-bottom:12px;padding:5px;border:1px solid #dfe5f0;border-radius:12px;background:#e9edf5}.project-editor-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;flex:1;padding:9px;border:0;border-radius:8px;background:transparent;color:#637088;font-size:.78rem;font-weight:550;box-shadow:none}.project-editor-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 3px 10px #1c2f5b1c}.project-editor-tabs button span{display:grid;width:25px;height:25px;place-items:center;border-radius:7px;background:#dce4f8;color:#5268a8;font-size:.62rem;font-weight:800}.project-editor-tabs button[aria-selected=true] span{background:#4d6de2;color:#fff}.project-editor-panel{min-height:405px;padding:17px;border:1px solid #e2e7f0;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1927480b}.project-editor-panel[hidden]{display:none!important}.project-editor-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #edf0f5}.project-editor-heading>span{display:grid;width:27px;height:27px;flex:0 0 27px;place-items:center;border-radius:8px;background:#e9efff;color:#3d5dc1;font-size:.64rem;font-weight:800}.project-editor-heading h4{margin:0;color:#172442;font-size:.9rem;font-weight:650}.project-editor-heading p{margin:3px 0 0;color:#7b879b;font-size:.7rem}.project-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.project-editor-grid .wide{grid-column:1/-1}.project-editor-grid label{min-width:0;margin:0;color:#44516a;font-size:.76rem;font-weight:550}.project-editor-grid label em{margin-left:5px;color:#7382a0;font-size:.61rem;font-style:normal;text-transform:uppercase}.project-editor-grid input,.project-editor-grid select,.project-editor-grid textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.project-editor-grid input,.project-editor-grid select{min-height:39px}.project-editor-grid textarea{resize:vertical}.project-editor-grid input:focus,.project-editor-grid select:focus,.project-editor-grid textarea:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.project-editor-grid [hidden]{display:none!important}.project-color-input{padding:4px!important}.project-editor-note{display:flex;flex-direction:column;gap:4px;padding:12px 13px;border:1px solid #d9e3f7;border-radius:10px;background:#f4f7ff;color:#52627e;font-size:.71rem;line-height:1.45}.project-editor-note strong{color:#294cae}.modal-project-editor .modal-actions{margin:14px -24px 0;padding:15px 24px;border-top:1px solid #dde3ed;background:#fff}.modal.modal-work-item-editor{width:min(720px,calc(100vw - 32px));max-width:720px;padding:22px;background:#f7f8fb}.modal-work-item-editor .modal-form{overflow:auto}.modal-work-item-editor .work-item-editor-grid{padding:16px;border:1px solid #e1e6ef;border-radius:14px;background:#fff}.project-report-kpis>div.finance{color:#fff;border-color:transparent;background:linear-gradient(145deg,#176c59,#2da17f)}.project-report-kpis .finance span,.project-report-kpis .finance small{color:#d9fff2}.project-report-grid.portfolio-row{grid-template-columns:minmax(270px,.7fr) minmax(420px,1.3fr);margin-bottom:14px}.project-status-visual{display:flex;align-items:center;justify-content:center;gap:25px;min-height:190px}.project-status-donut{display:grid;width:142px;height:142px;flex:0 0 142px;place-items:center;border-radius:50%}.project-status-donut:before{grid-area:1/1;width:92px;height:92px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #edf0f5;content:""}.project-status-donut>span{z-index:1;grid-area:1/1;display:flex;flex-direction:column;text-align:center}.project-status-donut strong{color:#1d2940;font-size:25px}.project-status-donut small{color:#7d8899;font-size:10px}.project-status-legend{display:flex;flex-direction:column;gap:8px}.project-status-legend span{display:grid;grid-template-columns:9px 1fr auto;align-items:center;gap:7px;color:#657288;font-size:11px}.project-status-legend i{width:8px;height:8px;border-radius:50%}.project-status-legend b{color:#26344d}.project-finance-chart{display:flex;flex-direction:column;gap:10px;padding-top:5px}.project-finance-row{display:grid;grid-template-columns:minmax(100px,150px) 1fr 90px;align-items:center;gap:10px}.project-finance-row>span{overflow:hidden;color:#56647b;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.project-finance-row>div{position:relative;height:20px;border-radius:5px;background:#f0f2f6}.project-finance-row i{position:absolute;left:0;height:7px;border-radius:999px}.project-finance-row i.revenue{top:2px;background:#4f6cf4}.project-finance-row i.cost{bottom:2px;background:#db7469}.project-finance-row strong{color:#25334b;font-size:11px;text-align:right}@media(max-width:900px){.project-calendar-kpis,.project-calendar-kpis.with-attendance{grid-template-columns:repeat(2,1fr)}#project-calendar{overflow-x:auto}.project-month-grid,.project-month-weekdays{min-width:760px}}@media(max-width:720px){.project-tabs{overflow-x:auto}.project-calendar-nav{width:100%}.project-calendar-nav h3{width:100%;margin:8px 0 0}.project-calendar-filters label{width:100%;justify-content:space-between}.project-calendar-filters label select{flex:1;min-width:0}.project-entry-add-buttons{margin:0;width:100%;display:grid;grid-template-columns:1fr 1fr}.project-form-grid,.project-form-grid.three{grid-template-columns:1fr;gap:0}.project-entry-type-picker{grid-template-columns:1fr 1fr}.project-calendar-date span{display:block}.project-card footer{grid-template-columns:1fr 1fr}.project-card footer span{display:none}.project-work-item{grid-template-columns:72px minmax(0,1fr) auto;padding-inline:9px}.project-work-item.nested{padding-left:18px}.project-work-children{padding-left:10px}.project-work-children:before{left:9px;width:2px}.project-work-actions{flex-direction:row;gap:4px;align-items:center}.project-portfolio-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.project-health-grid,.project-card-rich .project-card-stats{grid-template-columns:1fr}.project-card-rich .project-card-stats span{padding:9px 0;border-right:0;border-bottom:1px solid #e1e5ec}.project-card-rich .project-card-stats span:last-child{border-bottom:0}.project-card-rich footer{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card-rich footer span{display:none}.project-card-footer-actions{grid-column:1/-1;justify-content:flex-end}.project-work-item{grid-template-columns:72px minmax(0,1fr) auto}.project-work-progress{grid-column:2/3}.project-report-grid.portfolio-row{grid-template-columns:1fr}.project-status-visual{flex-direction:column}.project-finance-row{grid-template-columns:90px 1fr 76px}.modal.modal-project-editor{width:calc(100vw - 18px);max-height:96vh;overflow-y:auto}.modal-project-editor>h3{padding:18px}.modal-project-editor>.modal-form{padding:14px 14px 0;overflow:visible}.project-editor-tabs{overflow-x:auto}.project-editor-tabs button{min-width:145px;flex:0 0 auto}.project-editor-grid{grid-template-columns:1fr}.project-editor-grid .wide{grid-column:auto}.project-editor-panel{min-height:0}.modal-project-editor .modal-actions{margin:14px -14px 0;padding:12px 14px}}.brand img{display:block;width:100%;height:auto}@media(max-width:720px){.brand img{width:140px}}.schedule-workspace{color:#20222a}.schedule-hero,.schedule-toolbar,.schedule-kpis,.schedule-nav,.schedule-switch,.schedule-legend{display:flex;align-items:center}.schedule-hero{justify-content:space-between;gap:24px;margin-bottom:20px}.schedule-hero h2{margin:0;font-size:34px;letter-spacing:-.035em}.schedule-hero p{margin:6px 0 0;color:var(--muted)}.schedule-eyebrow{margin:0!important;color:#8e3755!important;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.schedule-toolbar{flex-wrap:wrap;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:#fff}.schedule-toolbar label{display:flex;align-items:center;gap:8px;margin:0}.schedule-toolbar select{min-width:180px;margin:0}.schedule-nav,.schedule-switch{gap:6px}.schedule-nav a,.schedule-switch a{padding:8px 12px;border:1px solid var(--border);border-radius:8px;color:inherit;text-decoration:none;background:#fff}.schedule-nav strong{margin-left:8px;text-transform:capitalize}.schedule-switch .active{border-color:#8e3755;background:#8e3755;color:#fff}.schedule-kpis{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px;margin:16px 0}.schedule-kpis article{display:flex;flex-direction:column;padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:#fff}.schedule-kpis span,.schedule-kpis small{color:var(--muted);font-size:12px}.schedule-kpis strong{margin:4px 0;font-size:21px}.schedule-ok{color:#28734f}.schedule-board{display:grid;grid-template-columns:250px repeat(var(--day-count),minmax(172px,1fr));min-width:calc(250px + var(--day-count)*172px);overflow:hidden;border:1px solid var(--border);border-radius:10px;background:#fff}.schedule-corner,.schedule-day,.schedule-employee,.schedule-lane{min-height:92px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.schedule-corner,.schedule-day{padding:12px;background:#f8f7f5}.schedule-corner,.schedule-employee{position:sticky;left:0;z-index:3}.schedule-corner{display:flex;flex-direction:column;justify-content:center}.schedule-corner span,.schedule-day span,.schedule-day small{color:var(--muted);font-size:11px}.schedule-day{text-align:center}.schedule-day b{display:block;font-size:24px}.schedule-time-corner,.schedule-time-scale{min-height:30px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff}.schedule-time-corner{position:sticky;left:0;z-index:3;display:flex;align-items:center;padding:0 12px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.schedule-time-scale{position:relative;overflow:hidden}.schedule-time-scale span{position:absolute;left:var(--x);top:7px;transform:translate(-50%);padding:0 3px;color:#687386;background:#fff;font-size:9px;line-height:16px;white-space:nowrap}.schedule-time-scale span:first-child{transform:none}.schedule-time-scale span:last-child{transform:translate(-100%)}.schedule-employee{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-areas:"avatar identity" "avatar totals";align-content:center;align-items:center;column-gap:9px;row-gap:4px;padding:10px;background:#fff}.schedule-employee i{grid-area:avatar;display:grid;width:35px;height:35px;place-items:center;border-radius:50%;background:#f1eafb;color:#6f2942;font-style:normal;font-weight:800}.schedule-employee span{grid-area:identity;min-width:0}.schedule-employee b,.schedule-employee small{display:block}.schedule-employee b{overflow:visible;line-height:1.2;white-space:normal;overflow-wrap:anywhere}.schedule-employee small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-employee small{color:var(--muted);font-size:11px}.schedule-employee>strong{grid-area:totals;justify-self:start;font-size:12px}.schedule-lane{position:relative;overflow:hidden;cursor:crosshair;background:repeating-linear-gradient(to right,transparent 0,transparent calc(13.333% - 1px),#eee calc(13.333% - 1px),#eee 13.333%)}.schedule-preview,.schedule-shift{position:absolute;top:10px;height:48px;border-radius:9px}.schedule-preview{z-index:1;background:#8e37552e;border:1px dashed #8e3755}.schedule-shift{z-index:2;left:var(--left);width:var(--width);min-width:18px;padding:5px 7px;overflow:hidden;border:1px solid #d8cbea;background:#ebe8fb;color:#504a91;text-align:left;cursor:pointer}.schedule-shift span,.schedule-shift small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-shift span{font-size:11px;font-weight:800;line-height:18px}.schedule-shift small{font-size:9px;line-height:15px;opacity:.82}.schedule-shift.published{border-color:#b9ddcf;background:#dff2e9;color:#28634d}.schedule-shift.external{border-style:dashed;background:#eee;color:#777;opacity:.8;cursor:not-allowed}.schedule-legend{gap:18px;margin-top:12px;color:var(--muted);font-size:12px}.schedule-legend i{display:inline-block;width:12px;height:12px;margin-right:5px;border-radius:3px;background:#ebe8fb;vertical-align:-2px}.schedule-legend i.published{background:#dff2e9}.schedule-legend i.external{background:#ddd}.schedule-legend small{margin-left:auto}.schedule-month{display:grid;grid-template-columns:repeat(7,1fr);overflow:hidden;border:1px solid var(--border);border-radius:10px;background:#fff}.schedule-month>b{padding:9px;text-align:center;background:#f8f7f5}.schedule-month-day{min-height:100px;padding:10px;border-top:1px solid var(--border);border-right:1px solid var(--border);color:inherit;text-decoration:none}.schedule-month-day strong,.schedule-month-day span,.schedule-month-day small,.schedule-month-day em{display:block}.schedule-month-day span{margin-top:12px;font-weight:700}.schedule-month-day small,.schedule-month-day em{color:var(--muted);font-style:normal}.schedule-month-day.outside{background:#f7f7f7;color:#aaa}@media(max-width:900px){.schedule-kpis{grid-template-columns:repeat(2,1fr)}.schedule-workspace{overflow-x:auto}.schedule-toolbar{align-items:flex-start}.schedule-nav strong{width:100%}}.schedule-workspace{--schedule-blue: var(--primary);--schedule-blue-soft: #edf3ff;--schedule-navy: #17233c;--schedule-green: #18845b;max-width:1680px;margin:0 auto}.schedule-hero{position:relative;overflow:hidden;padding:28px 30px;border-radius:18px;color:#fff;background:linear-gradient(125deg,#17233c,#244caa 64%,#3976ff);box-shadow:0 18px 40px #1838802e}.schedule-hero:after{content:"";position:absolute;width:230px;height:230px;right:15%;top:-150px;border:38px solid rgba(255,255,255,.08);border-radius:50%}.schedule-hero>*{position:relative;z-index:1}.schedule-hero h2{font-size:clamp(28px,3vw,40px);color:#fff}.schedule-hero p{max-width:690px;color:#ffffffc2}.schedule-hero .schedule-eyebrow{color:#a9c4ff!important}.schedule-hero button{min-height:46px;color:#173064;background:#fff;box-shadow:0 8px 22px #00000029}.schedule-hero button:hover{background:#f1f5ff;transform:translateY(-1px)}.schedule-toolbar{margin-top:18px;padding:12px;border:0;border-radius:14px;box-shadow:var(--shadow)}.schedule-nav a,.schedule-switch a{transition:border-color .16s,background .16s,transform .16s}.schedule-nav a:hover,.schedule-switch a:hover{border-color:#a9bde8;background:#f4f7ff;transform:translateY(-1px)}.schedule-switch .active{border-color:var(--schedule-blue);background:var(--schedule-blue);box-shadow:0 5px 14px #2962ff38}.schedule-kpis{gap:14px;margin:18px 0}.schedule-kpis article{position:relative;overflow:hidden;min-height:104px;padding:18px;border:0;border-radius:14px;box-shadow:var(--shadow)}.schedule-kpis article:after{content:"";position:absolute;right:-18px;bottom:-28px;width:78px;height:78px;border-radius:50%;background:var(--schedule-blue-soft)}.schedule-kpis strong{position:relative;z-index:1;font-size:25px;color:var(--schedule-navy)}.schedule-board,.schedule-month{border:0;border-radius:15px;box-shadow:0 10px 32px #1824421a}.schedule-corner,.schedule-day{background:linear-gradient(180deg,#f8faff,#f1f5fc)}.schedule-day b{color:var(--schedule-navy)}.schedule-employee i{width:38px;height:38px;flex:0 0 38px;background:linear-gradient(135deg,#dbe7ff,#edf3ff);color:#2752b3;box-shadow:inset 0 0 0 1px #cbdcff}.schedule-employee>strong{flex:0 0 auto;padding:5px 7px;border-radius:7px;color:#31405c;background:#f3f6fb;font-size:11px;white-space:nowrap}.schedule-lane{background-color:#fff;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(13.333% - 1px),#e9edf4 calc(13.333% - 1px),#e9edf4 13.333%);transition:background-color .15s}.schedule-lane:hover{background-color:#f8faff}.schedule-preview{background:#2962ff21;border-color:var(--schedule-blue)}.schedule-shift{border:1px solid #b9c9ef;background:linear-gradient(180deg,#f1f5ff,#dfe8ff);color:#173f98;box-shadow:inset 4px 0 #547df0,0 4px 10px #203e8021;transition:filter .15s,transform .15s,box-shadow .15s}.schedule-shift:hover{filter:saturate(1.15);transform:translateY(-1px)}.schedule-shift:hover{box-shadow:inset 4px 0 #547df0,0 6px 14px #203e802e}.schedule-shift.published{border-color:#a9d9c5;background:linear-gradient(180deg,#eaf9f3,#d5f0e5);color:#105d42;box-shadow:inset 4px 0 #15996a,0 4px 10px #19694b24}.schedule-shift.published:hover{box-shadow:inset 4px 0 #15996a,0 6px 14px #19694b33}.schedule-shift.external{background:#eef0f4;color:#6b7280;box-shadow:inset 3px 0 #9ba3af}.schedule-legend{padding:12px 4px}.schedule-legend i{background:#e9efff;box-shadow:inset 3px 0 #547df0}.schedule-legend i.published{background:#e2f5ed;box-shadow:inset 3px 0 #24a574}.schedule-month-day{position:relative;transition:background .15s,box-shadow .15s}.schedule-month-day:hover{z-index:1;background:#f4f7ff;box-shadow:inset 0 0 0 2px #91adf4}.schedule-month-day span{color:#244b9f}.schedule-month-day.outside{background:#f8f9fb;color:#a5aab4}.schedule-day.weekend,.schedule-time-scale.weekend,.schedule-lane.weekend,.schedule-month-day.weekend{background-color:#f2f7ff}.schedule-day.holiday,.schedule-time-scale.holiday,.schedule-lane.holiday,.schedule-month-day.holiday{background-color:#fff1f1}.schedule-day.holiday b,.schedule-month-day.holiday strong{color:#b5434d}.schedule-month-day mark{display:block;margin-top:5px;padding:0;color:#a94a53;background:transparent;font-size:10px;font-weight:700}@media(max-width:680px){.schedule-hero{padding:22px;align-items:flex-start}.schedule-hero button{width:100%}.schedule-kpis{grid-template-columns:1fr 1fr}.schedule-kpis article{min-height:92px;padding:14px}.schedule-toolbar{display:grid;grid-template-columns:1fr}.schedule-toolbar label,.schedule-toolbar select{width:100%}.schedule-nav,.schedule-switch{flex-wrap:wrap}.schedule-legend{align-items:flex-start;flex-direction:column;gap:8px}.schedule-legend small{margin-left:0}}.device-site-picker{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:17px;padding:15px 18px;border:1px solid #dbe3f1;border-radius:15px;background:linear-gradient(120deg,#fff,#f3f6ff);box-shadow:0 7px 22px #18274a0e}.device-site-picker>div{display:flex;align-items:center;gap:12px}.device-site-picker>div>span{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#e8eeff;color:#4262bd}.device-site-picker svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.device-site-picker strong,.device-site-picker small{display:block}.device-site-picker strong{color:#22314f;font-size:.84rem}.device-site-picker small{margin-top:3px;color:#7f8ba0;font-size:.68rem}.device-site-picker select{min-width:300px;height:43px;margin:0;border:1px solid #cdd7ea;border-radius:10px;background:#fff;color:#263653;font-weight:600;box-shadow:0 3px 9px #1c2d560d}@media(max-width:680px){.device-site-picker{align-items:flex-start;flex-direction:column}.device-site-picker select{width:100%;min-width:0}}.login-sales{display:flex;align-items:center;flex-direction:column;gap:5px;margin:18px -10px -6px;padding:15px 10px 5px;border-top:1px solid rgba(39,52,75,.12);text-align:center}.login-sales span{color:#657086;font-size:.72rem}.login-sales a{font-size:.78rem}.login-sales b{margin-left:4px}.purchase-screen{min-height:100vh;background-size:cover;background-position:center;background-attachment:fixed;color:#18233b;overflow:auto}.purchase-screen:before{position:fixed;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(110deg,#0c1623d4,#152530a3 44%,#0f1b27c7);pointer-events:none}.purchase-shell{position:relative;z-index:1;min-height:100vh}.purchase-nav{display:flex;align-items:center;justify-content:space-between;max-width:1220px;margin:auto;padding:24px 28px}.purchase-brand img{width:205px;filter:drop-shadow(0 7px 13px rgba(0,0,0,.28))}.purchase-login-link{padding:10px 16px;border:1px solid rgba(255,255,255,.42);border-radius:999px;color:#fff;font-size:.75rem;font-weight:650;text-decoration:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.purchase-login-link:hover{background:#ffffff1f}.purchase-content{max-width:1220px;margin:auto;padding:20px 28px 70px}.purchase-hero{max-width:770px;padding:60px 0 80px;color:#fff}.purchase-eyebrow,.purchase-section-title>p{margin:0 0 12px;color:#c6d3a6;font-size:.7rem;font-weight:800;letter-spacing:.16em}.purchase-hero h1{margin:0;font-size:clamp(3rem,7vw,6.2rem);line-height:.91;letter-spacing:-.055em}.purchase-hero h1 em{color:#d8c394;font-family:Georgia,serif;font-weight:400}.purchase-hero>p:not(.purchase-eyebrow){max-width:610px;margin:27px 0;color:#fffc;font-size:1.05rem;line-height:1.65}.purchase-primary{display:inline-flex;align-items:center;gap:18px;padding:14px 19px;border-radius:10px;background:#e2d0a4;color:#1c2b32;font-size:.78rem;font-weight:750;text-decoration:none;box-shadow:0 12px 30px #0003}.purchase-primary:hover{background:#f0dfb7}.purchase-trust{display:flex;gap:22px;margin-top:24px;color:#ffffffb8;font-size:.67rem}.purchase-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:19px;background:#ffffff26;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.purchase-benefits article{padding:25px;background:#f7f4e9e0}.purchase-benefits b{color:#a58d58;font-family:Georgia,serif;font-size:.76rem}.purchase-benefits h3{margin:13px 0 7px;font-size:1rem}.purchase-benefits p{margin:0;color:#657083;font-size:.72rem;line-height:1.55}.purchase-pricing{margin-top:28px;padding:38px;border-radius:22px;background:#f7f6f1f5;box-shadow:0 25px 65px #00000038}.purchase-section-title{text-align:center}.purchase-section-title>p{color:#647b58}.purchase-section-title h2{margin:0;color:#1b2a36;font-size:2.1rem}.purchase-section-title>span{display:block;margin-top:8px;color:#788294;font-size:.7rem}.purchase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.purchase-plan{position:relative;padding:24px;border:1px solid #dfe3e5;border-radius:16px;background:#fff;transition:.18s}.purchase-plan:hover,.purchase-plan.is-selected{border-color:#7d916d;box-shadow:0 13px 30px #27392c1c;transform:translateY(-3px)}.purchase-plan.featured{background:linear-gradient(145deg,#1c2c35,#334b49);color:#fff}.plan-tag{display:inline-block;padding:5px 8px;border-radius:999px;background:#edf2e9;color:#58704e;font-size:.6rem;font-weight:750;text-transform:uppercase}.featured .plan-tag{background:#d8c394;color:#273630}.purchase-plan h3{margin:18px 0 5px;font-size:1.15rem}.plan-price{display:flex;align-items:baseline;gap:6px}.plan-price b{font-size:2.25rem;letter-spacing:-.04em}.plan-price small{color:#7b8493;font-size:.7rem}.purchase-plan>p{min-height:34px;margin:5px 0 18px;color:#7a8494;font-size:.67rem}.featured>p,.featured .plan-price small{color:#ffffffa6}.purchase-plan ul{display:grid;gap:9px;margin:0 0 24px;padding:0;list-style:none}.purchase-plan li{position:relative;padding-left:19px;color:#566275;font-size:.7rem}.purchase-plan li:before{position:absolute;left:0;content:"✓";color:#668059;font-weight:800}.featured li{color:#ffffffc7}.featured li:before{color:#d8c394}.choose-plan{width:100%;margin:0;padding:11px;border:1px solid #cbd5c5;border-radius:9px;background:#f4f7f1;color:#486044;font-size:.72rem;font-weight:700;box-shadow:none}.featured .choose-plan{border-color:#d8c394;background:#d8c394;color:#273630}.purchase-order{display:grid;grid-template-columns:.8fr 1.2fr;gap:38px;margin-top:28px;padding:38px;border-radius:22px;background:#f4efe2f7;box-shadow:0 25px 65px #0003}.purchase-order h2{margin:0 0 12px;font-size:2rem}.purchase-order>div>p:last-child{color:#687487;font-size:.78rem;line-height:1.6}.purchase-order form{padding:22px;border:1px solid #d9dcd5;border-radius:15px;background:#fff}.purchase-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.purchase-form-grid label{margin:0;color:#435064;font-size:.68rem;font-weight:650}.purchase-form-grid input,.purchase-form-grid select{width:100%;height:42px;margin-top:6px;border:1px solid #d6dce1;border-radius:8px;background:#fff;box-shadow:none}.purchase-total{display:flex;align-items:center;justify-content:space-between;margin:18px 0;padding:15px;border-radius:10px;background:#edf2e9}.purchase-total span,.purchase-total small{display:block}.purchase-total span{color:#52634f;font-size:.7rem}.purchase-total small{margin-top:2px;color:#839080;font-size:.57rem}.purchase-total strong{color:#30452f;font-size:1.15rem}.purchase-submit{display:flex;align-items:center;justify-content:space-between;width:100%;margin:0;padding:14px 16px;border-radius:9px;background:#2d473f;font-size:.75rem;font-weight:700}.purchase-terms{display:block;margin-top:10px;color:#8a939f;font-size:.58rem;line-height:1.45}.purchase-footer{display:flex;justify-content:space-between;max-width:1220px;margin:auto;padding:20px 28px 35px;color:#fff9;font-size:.65rem}.purchase-footer a{color:#d8c394;text-decoration:none}@media(max-width:850px){.purchase-benefits,.purchase-grid,.purchase-order{grid-template-columns:1fr}.purchase-plan>p{min-height:0}.purchase-hero{padding:35px 0 55px}.purchase-trust{align-items:flex-start;flex-direction:column;gap:7px}}@media(max-width:560px){.purchase-nav,.purchase-content{padding-left:17px;padding-right:17px}.purchase-brand img{width:160px}.purchase-login-link{padding:8px 11px}.purchase-pricing,.purchase-order{padding:21px}.purchase-form-grid{grid-template-columns:1fr}.purchase-total{align-items:flex-start;flex-direction:column;gap:7px}.purchase-footer{padding-left:17px;padding-right:17px}}.modal.modal-worksite-folder{width:min(1100px,calc(100vw - 28px));max-width:1100px;max-height:94vh;overflow:auto;padding:0;background:#f4f6fa}.modal-worksite-folder>h3{padding:18px 22px;margin:0;background:#fff;border-bottom:1px solid var(--border)}.modal-worksite-folder>.modal-form>.modal-actions{padding:0 22px 18px}.worksite-folder{padding:18px 22px}.folder-loading,.folder-empty{padding:24px;color:var(--muted);text-align:center}.folder-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;padding:20px 24px;border-radius:16px;color:#fff;background:linear-gradient(120deg,#17233c,#3152aa);box-shadow:0 12px 30px #17233c33}.folder-hero span{font-size:10px;font-weight:800;letter-spacing:.14em;color:#b9ceff}.folder-hero h4{margin:3px 0;font-size:25px}.folder-hero p{margin:0;color:#dce6ff}.folder-counts{display:grid;grid-template-columns:auto auto;gap:0 8px;align-items:baseline;padding:10px 16px;border:1px solid #ffffff2b;border-radius:13px;background:#ffffff12}.folder-counts b{font-size:20px}.folder-counts small{color:#dce6ff}.folder-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.folder-card{min-width:0;padding:17px;border:1px solid #e0e6f0;border-radius:15px;background:#fff;box-shadow:0 7px 22px #17233c12}.notes-card{grid-row:span 2}.files-card{grid-column:1}.folder-title,.folder-title>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.folder-title>div{justify-content:flex-start}.folder-title h5{margin:0;color:#17233c;font-size:16px}.folder-title small{color:var(--muted)}.folder-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;color:#fff;background:#2962ff;font-size:18px;font-weight:800}.folder-title button{min-height:34px;padding:6px 11px}.requirement-list,.note-timeline,.file-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.requirement-item,.file-item{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid #e7ebf2;border-radius:11px;background:#fbfcfe}.requirement-item>div,.file-item>div{display:flex;min-width:0;flex:1;flex-direction:column}.requirement-item small{color:#667085;font-size:9px;font-weight:800;letter-spacing:.08em}.requirement-item p{margin:3px 0 0;color:var(--muted);font-size:11px}.requirement-symbol,.file-kind{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:10px;color:#2453b6;background:#eaf0ff;font-weight:800}.type-clothing{color:#8a5410;background:#fff1d7}.type-training{color:#6542a4;background:#f0eaff}.type-qualification{color:#176447;background:#e2f5ed}.icon-button{min-width:28px;min-height:28px;padding:2px;border:0;color:#8991a0;background:transparent;box-shadow:none;font-size:19px}.icon-button:hover{color:#b42318;background:#fff0ee}.note-composer{margin-top:14px;padding:12px;border-radius:12px;background:#f4f7fd}.note-composer textarea{margin:0;background:#fff}.note-composer>div{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.note-composer>small{display:block;margin-top:6px;color:#64748b}.recording{color:#fff!important;background:#d9342b!important;box-shadow:0 0 0 4px #d9342b1f!important}.note-timeline{position:relative;padding-left:14px}.note-timeline:before{content:"";position:absolute;left:4px;top:5px;bottom:5px;width:2px;background:#dce4f3}.note-item{position:relative;display:flex;gap:8px;padding:10px 8px 10px 15px}.note-item>i{position:absolute;left:-14px;top:16px;width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:#2962ff;box-shadow:0 0 0 2px #cbd9fa}.note-item>div{flex:1}.note-item p{margin:0 0 4px;white-space:pre-wrap}.note-item small,.file-item small{color:var(--muted);font-size:10px}.file-actions{display:flex;gap:7px;margin-top:14px;flex-wrap:wrap}.file-actions button{min-height:35px;padding:7px 10px}.file-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-item>.secondary{min-height:30px;padding:5px 9px}.kind-image{color:#176447;background:#e2f5ed}.kind-audio{color:#8f316b;background:#fde8f4}.folder-help{margin:10px 0 0;color:var(--muted);font-size:10px}@media(max-width:820px){.folder-grid{grid-template-columns:1fr}.notes-card{grid-row:auto}.files-card{grid-column:auto}.folder-hero{align-items:flex-start;flex-direction:column}.folder-counts{width:100%}}@media(max-width:520px){.modal.modal-worksite-folder{width:100vw;max-height:100vh;border-radius:0}.worksite-folder{padding:12px}.folder-hero{padding:17px}.note-composer>div{align-items:stretch;flex-direction:column}.file-item{flex-wrap:wrap}.file-item>div{min-width:160px}}.schedule-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;margin:16px 0}.schedule-template-bar,.schedule-range{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:#fff;box-shadow:var(--shadow)}.schedule-template-bar>div:first-child{display:flex;min-width:130px;flex-direction:column}.schedule-template-bar>div:first-child small{color:var(--muted);font-size:11px}.schedule-template-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.schedule-template{display:grid;grid-template-columns:8px auto;grid-template-rows:auto auto;column-gap:8px;padding:8px 11px;color:var(--text);border:1px solid var(--border);background:#fff;text-align:left;box-shadow:none}.schedule-template:hover{color:var(--text);border-color:var(--template-color);background:#f8faff}.schedule-template.selected{color:#fff;border-color:var(--template-color);background:var(--template-color);box-shadow:0 6px 16px color-mix(in srgb,var(--template-color) 30%,transparent)}.schedule-template i{grid-row:1/3;width:8px;height:28px;border-radius:6px;background:var(--template-color);align-self:center}.schedule-template.selected i{background:#fff}.schedule-template span{font-weight:750;line-height:1.1}.schedule-template small{font-size:10px;opacity:.72}.schedule-range{white-space:nowrap}.schedule-range select{width:76px;margin:0;padding:8px}.schedule-board.template-mode .schedule-lane{cursor:copy;background-color:#f4f8ff}.schedule-lane{background-color:#fff;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--hour) - 1px),#c3ccdc calc(var(--hour) - 1px),#c3ccdc var(--hour)),repeating-linear-gradient(to right,transparent 0,transparent calc(var(--half) - 1px),#e5e9f0 calc(var(--half) - 1px),#e5e9f0 var(--half)),repeating-linear-gradient(to right,transparent 0,transparent calc(var(--quarter) - 1px),#edf0f4 calc(var(--quarter) - 1px),#edf0f4 var(--quarter))}.schedule-board.week-grid .schedule-lane{background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--hour) - 1px),#c3ccdc calc(var(--hour) - 1px),#c3ccdc var(--hour)),repeating-linear-gradient(to right,transparent 0,transparent calc(var(--half) - 1px),#eef1f5 calc(var(--half) - 1px),#eef1f5 var(--half))}.schedule-cursor-time{position:absolute;z-index:8;transform:translate(10px);padding:4px 7px;color:#fff;background:#17264d;border:1px solid rgba(255,255,255,.35);border-radius:6px;box-shadow:0 4px 12px #1423483d;font-size:10px;font-weight:800;line-height:1;letter-spacing:.02em;white-space:nowrap;pointer-events:none}.schedule-cursor-time.flip{transform:translate(calc(-100% - 10px))}.schedule-context-menu{position:fixed;z-index:1200;width:255px;max-height:min(520px,calc(100vh - 16px));overflow:auto;padding:7px;border:1px solid #cdd6e7;border-radius:12px;background:#fffffffa;box-shadow:0 18px 45px #18274b3d,0 3px 10px #18274b1f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.schedule-context-menu header{padding:8px 10px 9px;color:#687386;border-bottom:1px solid #e8ecf3;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.schedule-context-menu button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;margin:2px 0;padding:9px 10px;color:#17264d;border:0;border-radius:7px;background:transparent;box-shadow:none;text-align:left}.schedule-context-menu button:hover{color:#17264d;background:#edf3ff}.schedule-context-menu button small{color:#7a8496;font-size:10px;font-weight:500;white-space:nowrap}.schedule-context-menu button.danger{color:#b23c48}.schedule-context-menu button.danger:hover{color:#9d2633;background:#fff0f1}.schedule-context-menu button:disabled{color:#9aa2b2;background:transparent;cursor:default}.schedule-flex-time{color:#365fc7;font-style:normal;font-weight:750;white-space:nowrap}.schedule-shift.continues-left{border-radius:0 7px 7px 0}.schedule-shift.continues-right{border-radius:7px 0 0 7px}.schedule-break{position:absolute;z-index:4;top:-1px;bottom:-1px;border:2px dashed #8a5400;border-radius:4px;background:#ffc25cb8;pointer-events:none}.schedule-break.paid{border-color:#176447;background:#66cda6ad}.schedule-attendance{position:absolute;z-index:5;bottom:8px;height:16px;min-width:4px;overflow:hidden;border:1px solid #08774f;border-radius:8px;background:linear-gradient(180deg,#20b77c,#0d8b5e);box-shadow:0 0 0 2px #ffffffeb,0 3px 8px #0d704c3d;pointer-events:none}.schedule-attendance:before{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background:#075f40}.schedule-attendance span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0 5px;color:#fff;background:transparent;font-size:9px;font-weight:800;line-height:14px;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 1px rgba(0,0,0,.2)}.schedule-attendance.warning{border-color:#a75b0f;background:linear-gradient(180deg,#f0aa4f,#d77b19)}.schedule-attendance.warning:before{background:#95510d}.schedule-absence{position:absolute;z-index:6;top:7px;right:5px;bottom:18px;left:5px;display:flex;align-items:center;justify-content:center;gap:6px;padding:5px 8px;border:1px solid #9bb4dc;border-radius:7px;background:#e1ecfdf0;color:#294c86;pointer-events:none}.schedule-absence.unpaid{border-style:dashed;border-color:#c3a77c;background:#fcf2ddf2;color:#76572a}.schedule-absence small{opacity:.75;font-size:9px}.schedule-legend i.absence{background:#e1ecfd;border:1px solid #9bb4dc;box-shadow:none}.schedule-legend i.attendance{height:7px;background:#18a66f;box-shadow:none}.schedule-warn{color:#c05c20!important}.schedule-legend i.break{background:#ffd896;border:1px dashed #8a5400;box-shadow:none}.template-manager{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.template-manager-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px;color:var(--text);border:1px solid var(--border);background:#fff;text-align:left}.template-manager-row:hover{color:var(--text);background:#f4f7ff;border-color:#9eb3e5}.template-manager-row>i{width:10px;height:38px;border-radius:6px}.template-manager-row>span{display:flex;flex:1;flex-direction:column}.template-manager-row small,.template-manager-row em{color:var(--muted);font-size:11px;font-style:normal}.shift-break-editor{margin:4px 0 15px;padding:14px;border:1px solid var(--border);border-radius:10px}.shift-break-editor legend{padding:0 6px;font-weight:700}.shift-break-editor>small{display:block;margin-top:8px;color:var(--muted)}.shift-break-row{display:flex;align-items:center;gap:7px;margin-bottom:8px;flex-wrap:wrap}.shift-break-row input[type=date]{width:142px}.shift-break-row input[type=time]{width:100px}.shift-break-row select{min-width:220px;flex:1}.shift-break-row input[data-field=label]{min-width:160px;flex:1}.shift-break-row label{display:flex;align-items:center;margin:0;font-size:12px}.legal-note{margin:10px 0;padding:10px 12px;border-left:3px solid #5c7fd5;border-radius:6px;background:#f3f6fd;color:#3d4b69;font-size:12px}.legal-note p{margin:4px 0 0;line-height:1.45}@media(max-width:1000px){.schedule-tools{grid-template-columns:1fr}.schedule-template-bar{align-items:flex-start;flex-direction:column}.schedule-range{flex-wrap:wrap}}@media(max-width:680px){.schedule-range{white-space:normal}.shift-break-row{padding-bottom:10px;border-bottom:1px solid var(--border)}}.modal.modal-shift-editor{width:min(820px,calc(100vw - 32px));max-width:820px;max-height:none;padding:0;overflow:hidden;background:#f4f6fb}.modal-shift-editor>h3{margin:0;padding:22px 26px 18px;border-bottom:1px solid #e4e9f2;background:#fff;color:#172442;font-size:1.18rem}.modal-shift-editor>.modal-form{display:flex;flex-direction:column;padding:18px 24px 0}.shift-form-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:14px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.shift-form-mark{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be38}.shift-form-mark svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.shift-form-intro strong{color:#172442;font-size:.94rem;font-weight:650}.shift-form-intro p{margin:3px 0 0;color:#66748d;font-size:.76rem;line-height:1.4}.shift-form-tabs{display:flex;gap:5px;margin-bottom:12px;padding:5px;border:1px solid #dfe5f0;border-radius:12px;background:#e9edf5}.shift-form-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;flex:1;padding:9px;border:0;border-radius:8px;background:transparent;color:#637088;font-size:.78rem;font-weight:550;box-shadow:none}.shift-form-tabs button:hover{background:#ffffffa3;color:#2f4c9f}.shift-form-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 3px 10px #1c2f5b1c}.shift-form-tabs button>span,.shift-panel-heading>span{display:grid;width:25px;height:25px;flex:0 0 25px;place-items:center;border-radius:7px;background:#dce4f8;color:#5268a8;font-size:.62rem;font-weight:800}.shift-form-tabs button[aria-selected=true]>span{background:#4d6de2;color:#fff}.shift-form-tabs button>i{min-width:19px;padding:2px 6px;border-radius:999px;background:#dfe6f6;color:#536aab;font-size:.62rem;font-style:normal;font-weight:750}.shift-form-panel{min-height:350px;padding:18px;border:1px solid #e2e7f0;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1927480b}.shift-form-panel[hidden]{display:none!important}.shift-panel-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px;padding-bottom:13px;border-bottom:1px solid #edf0f5}.shift-panel-heading h4{margin:0;color:#172442;font-size:.94rem;font-weight:650}.shift-panel-heading p{margin:3px 0 0;color:#7b879b;font-size:.74rem;line-height:1.35}.shift-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px}.shift-form-grid label{min-width:0;margin:0;color:#44516a;font-size:.78rem;font-weight:550}.shift-form-grid label em{margin-left:5px;color:#5970bd;font-size:.61rem;font-style:normal;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.shift-form-grid input,.shift-form-grid select,.shift-form-grid textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none;transition:border-color .16s,box-shadow .16s}.shift-form-grid input,.shift-form-grid select{min-height:40px}.shift-form-grid textarea{min-height:122px;resize:vertical}.shift-form-grid input:focus,.shift-form-grid select:focus,.shift-form-grid textarea:focus,.shift-break-row input:focus,.shift-break-row select:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.shift-form-grid label small{display:block;margin-top:5px;color:#8792a5;font-size:.68rem;font-weight:400;line-height:1.35}.shift-field-wide{grid-column:1/-1}.shift-break-list{display:flex;max-height:190px;flex-direction:column;gap:10px;overflow:auto;padding-right:3px}.shift-break-empty{display:grid;min-height:74px;place-items:center;border:1px dashed #d5ddea;border-radius:11px;background:#fafbfe;color:#7b879b;font-size:.76rem}.shift-break-row{display:grid;grid-template-columns:minmax(145px,1.25fr) 100px auto 100px;align-items:center;gap:8px;margin:0;padding:12px;border:1px solid #e0e6f0;border-radius:12px;background:#fafbfe}.shift-break-row input,.shift-break-row select{width:100%;min-height:36px;margin:0;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.shift-break-row input[type=date],.shift-break-row input[type=time]{width:100%}.shift-break-row>span{color:#8490a3;text-align:center}.shift-break-row select{grid-column:1/3;min-width:0}.shift-break-row input[data-field=label]{grid-column:3/5;min-width:0}.shift-break-row>label{grid-column:1/4;display:flex;align-items:center;gap:8px;margin:0;color:#44516a;font-size:.73rem;font-weight:550}.shift-break-row>label input{width:auto;min-height:0;margin:0}.shift-break-row .remove-break{grid-column:4;justify-self:end;padding:6px 8px;color:#b24336;background:transparent;font-size:.72rem;font-weight:650}.shift-break-row .remove-break:hover{color:#8f2d23;background:#fff0ee}.shift-add-break{display:inline-flex;align-items:center;gap:7px;margin-top:11px;padding:9px 13px;border:1px solid #cbd6ee;border-radius:8px;background:#f5f8ff;color:#3455b6;box-shadow:none;font-size:.76rem;font-weight:650}.shift-add-break:hover{border-color:#aebee5;background:#edf3ff;color:#2949a3}.shift-add-break svg,.shift-danger-zone button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.modal-shift-editor .legal-note{margin:12px 0 0;padding:11px 13px;border:1px solid #dbe4f5;border-left:3px solid #5c7fd5;border-radius:8px;background:#f3f6fd;color:#3d4b69;font-size:.72rem}.shift-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:13px 14px;border:1px solid #f0d3ce;border-radius:12px;background:#fff8f7}.shift-danger-zone>div{display:flex;flex-direction:column;gap:3px}.shift-danger-zone b{color:#71352e;font-size:.8rem}.shift-danger-zone small{color:#9a6c66;font-size:.68rem}.shift-danger-zone button{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #e3aca4;border-radius:8px;background:#fff;color:#b13d31;box-shadow:none;font-size:.74rem;font-weight:650}.shift-danger-zone button:hover{border-color:#c96c60;background:#b64235;color:#fff}.modal-shift-editor .modal-actions{margin:14px -24px 0;padding:15px 24px;border-top:1px solid #dde3ed;background:#fff;box-shadow:0 -8px 22px #1927480b}.modal-shift-editor .modal-actions button{min-width:128px}@media(max-width:720px){.modal.modal-shift-editor{width:calc(100vw - 18px);max-height:96vh;overflow:auto}.modal-shift-editor>h3{padding:18px}.modal-shift-editor>.modal-form{padding:14px 14px 0}.shift-form-tabs{overflow-x:auto;justify-content:flex-start}.shift-form-tabs button{min-width:140px;flex:0 0 auto}.shift-form-panel{min-height:0;padding:15px}.shift-form-grid{grid-template-columns:1fr}.shift-field-wide{grid-column:auto}.shift-break-row{grid-template-columns:1fr 1fr}.shift-break-row>span{display:none}.shift-break-row select,.shift-break-row input[data-field=label],.shift-break-row>label{grid-column:1/-1}.shift-break-row .remove-break{grid-column:2}.shift-danger-zone{align-items:flex-start;flex-direction:column}.modal-shift-editor .modal-actions{margin:14px -14px 0;padding:12px 14px}}.modal.modal-map{width:min(920px,calc(100vw - 28px));max-width:920px}.location-picker{margin:14px 0 18px;padding:16px;border:1px solid #dfe6f3;border-radius:16px;background:linear-gradient(180deg,#f8faff 0,#fff 35%);box-shadow:inset 0 1px #fff}.location-picker-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.location-picker-heading>div:first-child{display:flex;flex-direction:column;gap:3px}.location-picker-heading b{color:#17233c;font-size:15px}.location-picker-heading small,.location-privacy{color:var(--muted);font-size:11px}.location-type-switch{display:flex;gap:4px;padding:3px;border-radius:10px;background:#e9eef8}.location-type-switch button{min-height:32px;padding:6px 14px;border:0;background:transparent;box-shadow:none}.location-type-switch button.active{color:#fff;background:#2962ff;box-shadow:0 4px 12px #2962ff40}.location-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:9px}.location-search input{margin:0}.location-results{position:relative;z-index:500;max-height:190px;margin:-1px 0 10px;overflow:auto;border:1px solid #dce3f0;border-radius:11px;background:#fff;box-shadow:0 12px 28px #17233c24}.location-results>button{display:flex;width:100%;padding:10px 12px;flex-direction:column;align-items:flex-start;border:0;border-bottom:1px solid #edf0f5;border-radius:0;color:var(--text);background:#fff;text-align:left;box-shadow:none}.location-results>button:hover{color:#173d99;background:#f2f6ff}.location-results>button:last-child{border-bottom:0}.location-results small{color:var(--muted);font-weight:400}.location-results>span{display:block;padding:12px}.location-map{height:390px;overflow:hidden;border:1px solid #cfd8e8;border-radius:13px;background:#e9edf4;box-shadow:0 5px 18px #17233c1a}.location-map-footer{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;color:#526077;font-size:12px}.location-area-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.location-area-actions button{min-height:32px;padding:6px 10px;font-size:11px}.location-privacy{margin:5px 0 0;line-height:1.4}.location-address{max-width:330px;margin-top:5px;line-height:1.35}.location-pin{background:transparent;border:0}.location-pin span{display:block;width:25px;height:25px;transform:rotate(45deg);border:3px solid #fff;border-radius:50% 50% 50% 5px;background:#2962ff;box-shadow:0 4px 12px #12285c61}.location-pin span:after{content:"";position:absolute;top:6px;left:6px;width:7px;height:7px;border-radius:50%;background:#fff}.leaflet-container{font-family:inherit}.leaflet-control-attribution{font-size:10px}.service-package{margin:18px 0;padding:16px;border:1px solid #dfe5f0;border-radius:14px;background:#f8faff}.service-package legend{padding:0 7px;color:#17233c;font-size:14px;font-weight:800}.service-package>p{margin:0 0 12px;line-height:1.45}.service-package>label{display:flex;align-items:flex-start;gap:10px;margin:8px 0;padding:11px 12px;border:1px solid #e1e7f2;border-radius:10px;background:#fff;cursor:pointer}.service-package>label input{width:auto;margin-top:3px}.service-package>label span,.service-package>label small{display:block}.service-package>label small{margin-top:2px;color:var(--muted);font-weight:400}.report-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:154px;margin-bottom:18px;padding:28px 34px;overflow:hidden;border-radius:22px;background:linear-gradient(120deg,#172442,#263b7b 58%,#4364d1);color:#fff;box-shadow:0 16px 38px #1f326929}.report-hero:after{content:"";position:absolute;right:-52px;top:-105px;width:250px;height:250px;border:30px solid rgba(255,255,255,.07);border-radius:50%}.report-hero h2{margin:3px 0 7px;color:#fff;font-size:2rem;letter-spacing:-.025em}.report-hero p:not(.report-eyebrow){margin:0;color:#ffffffc7;font-size:.9rem}.report-eyebrow{margin:0;color:#bfcfff;font-size:.7rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.report-hero-mark{position:relative;z-index:1;display:grid;place-items:center;width:62px;height:62px;flex:0 0 62px;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:#ffffff1c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.report-hero-mark svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.report-mode-tabs{display:flex;gap:6px;margin:0 0 18px;padding:5px;border:1px solid #dfe5f0;border-radius:13px;background:#e9edf5}.report-mode-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;margin:0;padding:10px 14px;border:0;border-radius:9px;background:transparent;color:#647188;font-size:.8rem;font-weight:600;box-shadow:none}.report-mode-tabs button:hover{border:0;background:#ffffffad;color:#3156ba}.report-mode-tabs button.active{border:0;background:#fff;color:#294cae;box-shadow:0 3px 11px #1c2f5b1c}.report-mode-tabs svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.report-filter-panel{margin-bottom:24px;padding:0;overflow:visible;border:1px solid #e1e7f1;border-radius:17px;background:#fff;box-shadow:0 10px 30px #18274a12}.report-filter-heading{display:flex;align-items:center;gap:11px;padding:17px 20px;border-bottom:1px solid #e9edf4;background:linear-gradient(110deg,#f9faff,#f3f6ff);border-radius:17px 17px 0 0}.report-filter-heading>span,.report-period-heading>span{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:#e7edff;color:#3d5fc2}.report-filter-heading svg,.report-period-heading svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.report-filter-heading h3{margin:0;color:#172442;font-size:.92rem;font-weight:650}.report-filter-heading p{margin:2px 0 0;color:#7a879d;font-size:.72rem}.report-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px;padding:18px 20px}.report-location-field{grid-column:span 2}.report-filter-grid label,.report-period-row>label{display:flex;min-width:0;flex-direction:column;gap:6px;margin:0;color:#4b5870;font-size:.72rem;font-weight:600}.report-filter-grid select,.report-period-row input{width:100%;min-width:0;height:40px;margin:0;border:1px solid #d5ddea;border-radius:7px;background:#fff;box-shadow:none}.report-filter-grid select:focus,.report-period-row input:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21c}.report-scope-note{display:flex;align-items:flex-start;gap:10px;margin:0 20px 17px;padding:11px 13px;border:1px solid #cfe4d5;border-radius:11px;background:#eff8f2;color:#315c40}.report-scope-note>span{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:8px;background:#dcefe2;color:#37764b}.report-scope-note svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.report-scope-note b{display:block;font-size:.75rem;font-weight:700}.report-scope-note p{margin:2px 0 0;color:#63806c;font-size:.68rem;line-height:1.4}.report-period-row{display:grid;grid-template-columns:minmax(185px,1fr) minmax(150px,.72fr) auto minmax(150px,.72fr) auto;align-items:end;gap:12px;padding:16px 20px;border-top:1px solid #edf0f5;background:#fbfcfe}.report-period-heading{display:flex;align-items:center;gap:10px;align-self:center}.report-period-heading b{display:block;color:#273650;font-size:.8rem;font-weight:650}.report-period-heading small{display:block;margin-top:2px;color:#8490a4;font-size:.67rem}.report-period-separator{align-self:center;margin-top:18px;color:#9aa5b7}.report-primary-actions{display:flex;align-items:center;gap:7px;padding-bottom:1px}.report-icon-button{position:relative;display:grid;width:40px;height:40px;place-items:center;margin:0;padding:0;border:1px solid #d8e0ec;border-radius:9px;background:#fff;color:#52627e;box-shadow:none;transition:border-color .15s,background .15s,color .15s,transform .15s}.report-icon-button>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.report-icon-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.report-icon-button:hover{border-color:#bac9ed;background:#f0f4ff;color:#3157bd;transform:translateY(-1px)}.report-icon-button.is-primary{border-color:#4666d5;background:linear-gradient(145deg,#5878ef,#3e5fc8);color:#fff;box-shadow:0 5px 12px #3e5fc838}.report-icon-button.is-primary:hover{border-color:#3454be;background:linear-gradient(145deg,#4f70e5,#3454be);color:#fff}.report-icon-button:after{content:attr(data-tooltip);position:absolute;z-index:100;right:0;bottom:calc(100% + 8px);width:max-content;padding:6px 8px;border-radius:7px;background:#172442;color:#fff;font-size:.66rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(3px);transition:.14s}.report-icon-button:hover:after,.report-icon-button:focus-visible:after{opacity:1;transform:translateY(0)}.report-presets{display:flex;flex-direction:row;gap:18px;margin:0;padding:13px 20px 16px;border-top:1px solid #edf0f5}.preset-group{gap:6px}.preset-label{min-width:auto;margin-right:3px;color:#7a879c;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.preset-group button.preset{margin:0;padding:6px 10px;border:1px solid #dfe5ef;border-radius:7px;background:#fff;color:#5a6880;font-size:.7rem;font-weight:550;box-shadow:none}.preset-group button.preset:hover{border-color:#bdccef;background:#f1f5ff;color:#3157bd}.report-loading-state{display:flex;align-items:center;justify-content:center;gap:10px;min-height:150px;margin-top:20px;border:1px dashed #d8e0ed;border-radius:15px;background:#fafbfe;color:#7b879a;font-size:.8rem}.report-loading-state svg{width:21px;height:21px;fill:none;stroke:#5973c7;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.report-overview{margin-top:22px;padding:20px;border:1px solid #e1e7f1;border-radius:17px;background:#fff;box-shadow:0 9px 28px #18274a0f}.report-panel{border-color:#e1e7f1;border-radius:17px;box-shadow:0 9px 28px #18274a0f}.report-kpi{border-color:#e2e7f0;border-radius:13px;background:linear-gradient(145deg,#fff,#fafbfe)}.report-kpi.primary{background:linear-gradient(135deg,#315fe8,#456fdc)}.report-week-card{border-color:#e2e7f0;border-radius:11px;background:#fafbfe}.report-employee{border-color:#e1e7f0;border-radius:12px}.report-employee[open]{border-color:#bfcdf0;box-shadow:0 8px 24px #1e305b14}.report-expand-label{display:flex!important;align-items:center!important;justify-content:flex-end;flex-direction:row!important;gap:5px;color:#5870bd;font-size:0}.report-expand-label svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .17s}.report-employee[open] .report-expand-label svg{transform:rotate(180deg)}.report-employee[open] .report-expand-label:before{content:none}.modal.modal-report-email{max-width:570px;padding:0;overflow:hidden;background:#f5f7fb}.modal-report-email>h3{margin:0;padding:20px 22px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-report-email>.modal-form{padding:19px 22px 0}.report-email-intro{display:flex;align-items:center;gap:12px;margin-bottom:15px;padding:13px 14px;border:1px solid #dbe4f5;border-radius:13px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.report-email-intro>span{display:grid;width:40px;height:40px;place-items:center;flex:0 0 40px;border-radius:11px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff}.report-email-intro svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.report-email-intro strong{color:#172442;font-size:.88rem;font-weight:650}.report-email-intro p{margin:3px 0 0;color:#6f7c93;font-size:.72rem;line-height:1.4}.report-email-fields{padding:16px;border:1px solid #e2e7f0;border-radius:13px;background:#fff}.report-email-fields label{display:block;margin:0 0 13px;color:#44516a;font-size:.76rem;font-weight:550}.report-email-fields label:last-child{margin-bottom:0}.report-email-fields label em{margin-left:5px;color:#7f8ca1;font-size:.63rem;font-style:normal;text-transform:uppercase}.report-email-fields input,.report-email-fields textarea{width:100%;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.modal-report-email .modal-actions{margin:17px -22px 0;padding:14px 22px;border-top:1px solid #e0e5ee;background:#fff}@media(max-width:1050px){.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-period-row{grid-template-columns:minmax(165px,1fr) minmax(140px,1fr) auto minmax(140px,1fr)}.report-primary-actions{grid-column:2/-1;justify-content:flex-end}}@media(max-width:720px){.report-hero{min-height:130px;padding:22px;border-radius:17px}.report-hero h2{font-size:1.55rem}.report-hero-mark{display:none}.report-mode-tabs{overflow-x:auto}.report-mode-tabs button{min-width:220px;flex:0 0 auto}.report-filter-grid{grid-template-columns:1fr;padding:15px}.report-location-field{grid-column:auto}.report-scope-note{margin:0 15px 15px}.report-period-row{grid-template-columns:1fr auto 1fr;padding:15px}.report-period-heading{grid-column:1/-1}.report-primary-actions{grid-column:1/-1;justify-content:flex-start}.report-presets{flex-direction:column;gap:9px;padding:12px 15px 15px}.preset-label{width:100%}.report-overview{padding:15px}.report-expand-label{display:none!important}}.cards-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:142px;margin-bottom:18px;padding:26px 30px;overflow:hidden;border-radius:21px;background:linear-gradient(120deg,#172442,#293e7e 58%,#4968d1);color:#fff;box-shadow:0 15px 36px #1f326926}.cards-hero:after{content:"";position:absolute;right:-45px;top:-115px;width:245px;height:245px;border:29px solid rgba(255,255,255,.07);border-radius:50%}.cards-hero h2{margin:3px 0 6px;color:#fff;font-size:2rem;letter-spacing:-.025em}.cards-hero p:not(.cards-eyebrow){margin:0;color:#ffffffc7;font-size:.88rem}.cards-eyebrow{margin:0;color:#c0d0ff;font-size:.68rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.cards-add-button{position:relative;z-index:1;display:flex;align-items:center;gap:8px;margin:0;padding:11px 16px;border:1px solid rgba(255,255,255,.22);border-radius:10px;background:#fff;color:#294cae;font-size:.78rem;font-weight:650;box-shadow:0 7px 18px #0d18392e}.cards-add-button:hover{background:#f2f5ff;color:#203f9a;transform:translateY(-1px)}.cards-add-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.card-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.card-stat{display:grid;grid-template-columns:1fr auto;gap:4px 9px;min-width:0;margin:0;padding:13px 14px;border:1px solid #e1e7f1;border-radius:13px;background:#fff;color:#273650;text-align:left;box-shadow:0 5px 17px #18274a0b;transition:.15s}.card-stat:hover{border-color:#bdccef;background:#f8faff;transform:translateY(-1px)}.card-stat.is-active{border-color:#afc0ef;background:linear-gradient(145deg,#f5f8ff,#eaf0ff);box-shadow:0 7px 20px #304fa41a}.card-stat span{align-self:center;color:#5c6980;font-size:.7rem;font-weight:650}.card-stat strong{grid-row:1/3;grid-column:2;align-self:center;color:#1c2b49;font-size:1.45rem;line-height:1}.card-stat small{overflow:hidden;color:#929caf;font-size:.62rem;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.card-stat.is-active span,.card-stat.is-active strong{color:#3157bd}.cards-list-shell{overflow:visible;border:1px solid #e1e7f1;border-radius:17px;background:#fff;box-shadow:0 10px 30px #18274a11}.cards-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 18px;border-bottom:1px solid #e8edf4;background:linear-gradient(110deg,#f9faff,#f4f7ff);border-radius:17px 17px 0 0}.cards-toolbar-title{display:flex;align-items:center;gap:10px}.cards-toolbar-title>span{display:grid;width:35px;height:35px;place-items:center;border-radius:10px;background:#e7edff;color:#3d5fc2}.cards-toolbar-title svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cards-toolbar-title strong{display:block;color:#1f2d49;font-size:.83rem;font-weight:650}.cards-toolbar-title small{display:block;margin-top:2px;color:#8490a3;font-size:.66rem}.cards-toolbar label{display:flex;align-items:center;gap:8px;margin:0;color:#5a677e;font-size:.72rem;font-weight:600}.cards-toolbar select{min-width:175px;height:37px;margin:0;border:1px solid #d6deeb;border-radius:7px;background:#fff;box-shadow:none}.cards-table-scroll{overflow-x:auto;border-radius:0 0 17px 17px}.cards-table{min-width:930px;margin:0;border-radius:0;box-shadow:none}.cards-table th{padding-top:12px;padding-bottom:12px;background:#fbfcfe;color:#738096;font-size:.65rem;letter-spacing:.045em;text-transform:uppercase}.cards-table td{padding-top:12px;padding-bottom:12px;vertical-align:middle}.cards-table tbody tr:last-child td{border-bottom:0}.card-uid,.card-holder{display:flex;align-items:center;gap:10px}.card-uid>span{display:grid;width:36px;height:36px;place-items:center;flex:0 0 36px;border-radius:11px;background:linear-gradient(145deg,#edf2ff,#dce6ff);color:#3c5fbd}.card-uid svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.card-uid>div,.card-holder>div{display:flex;min-width:0;flex-direction:column;gap:2px}.card-uid code{width:max-content;padding:3px 6px;border-radius:5px;background:#f0f3f8;color:#263755;font-size:.73rem;font-weight:600;letter-spacing:.025em}.card-uid small,.card-holder small{color:#909bae;font-size:.62rem}.card-holder>span{display:grid;width:33px;height:33px;place-items:center;flex:0 0 33px;border:1px solid #cfdbf7;border-radius:50%;background:#edf3ff;color:#4261b6;font-size:.65rem;font-weight:750}.card-holder strong{color:#263550;font-size:.78rem;font-weight:550}.card-no-holder{color:#929cad;font-size:.72rem;font-style:italic}.card-date,.card-state-change{color:#58657b;font-size:.7rem;line-height:1.35}.card-state-change small{color:#919bad;font-size:.63rem}.card-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}td.actions .card-action-button{position:relative;display:grid;width:34px;height:34px;place-items:center;margin:0;padding:0;border:1px solid #dfe5ef;border-radius:9px;background:#fff;color:#63728d;box-shadow:none;transition:.15s}.card-action-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.card-action-button:hover{border-color:#bdccef!important;background:#f0f4ff!important;color:#3157bd!important;transform:translateY(-1px)}.card-action-button.mark-lost{color:#9c7025!important}.card-action-button.is-danger{color:#a85a59!important}.card-action-button.is-danger:hover{border-color:#edc4c0!important;background:#fff1ef!important;color:#b42318!important}.card-action-button:after{content:attr(data-tooltip);position:absolute;z-index:100;right:0;bottom:calc(100% + 8px);width:max-content;padding:6px 8px;border-radius:7px;background:#172442;color:#fff;font-size:.66rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(3px);transition:.14s}.card-action-button:hover:after,.card-action-button:focus-visible:after{opacity:1;transform:translateY(0)}.cards-empty{display:flex;min-height:245px;align-items:center;justify-content:center;flex-direction:column;padding:35px;color:#7d899d;text-align:center}.cards-empty>span{display:grid;width:58px;height:58px;place-items:center;margin-bottom:12px;border-radius:17px;background:#edf2ff;color:#4b68bd}.cards-empty svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.cards-empty strong{color:#34435d;font-size:.86rem;font-weight:650}.cards-empty p{margin:4px 0 0;font-size:.72rem}.modal.modal-card-editor{max-width:600px;padding:0;overflow:hidden;background:#f5f7fb}.modal-card-editor>h3{margin:0;padding:20px 22px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-card-editor>.modal-form{padding:19px 22px 0}.card-editor-intro{display:flex;align-items:center;gap:12px;margin-bottom:15px;padding:13px 14px;border:1px solid #dbe4f5;border-radius:13px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.card-editor-intro>span{display:grid;width:43px;height:43px;place-items:center;flex:0 0 43px;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be33}.card-editor-intro svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.card-editor-intro strong{color:#172442;font-size:.9rem;font-weight:650}.card-editor-intro p{margin:3px 0 0;color:#6f7c93;font-size:.72rem;line-height:1.4}.card-editor-intro code{padding:1px 4px;border-radius:4px;background:#fff;color:#3157bd;font-size:.68rem}.card-editor-fields{padding:16px;border:1px solid #e2e7f0;border-radius:13px;background:#fff}.card-editor-fields label{display:block;margin:0 0 14px;color:#44516a;font-size:.76rem;font-weight:550}.card-editor-fields label:last-of-type{margin-bottom:0}.card-editor-fields label em{margin-left:5px;color:#7f8ca1;font-size:.62rem;font-style:normal;letter-spacing:.035em;text-transform:uppercase}.card-editor-fields input,.card-editor-fields select{width:100%;min-height:40px;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.card-editor-fields input:focus,.card-editor-fields select:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.card-editor-note{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:10px 11px;border:1px solid #dfe6f4;border-radius:9px;background:#edf3ff;color:#687794;font-size:.68rem;line-height:1.4}.card-editor-note b{color:#3554ad;font-weight:650}.modal-card-editor .modal-actions{margin:17px -22px 0;padding:14px 22px;border-top:1px solid #e0e5ee;background:#fff}@media(max-width:950px){.card-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.cards-hero{min-height:145px;align-items:flex-start;flex-direction:column;gap:16px;padding:21px;border-radius:17px}.cards-hero h2{font-size:1.55rem}.cards-add-button{width:100%;justify-content:center}.card-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-toolbar{align-items:flex-start;flex-direction:column}.cards-toolbar label,.cards-toolbar select{width:100%}}.users-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:142px;margin-bottom:17px;padding:26px 30px;overflow:hidden;border-radius:21px;background:linear-gradient(120deg,#172442,#293e7e 58%,#4968d1);color:#fff;box-shadow:0 15px 36px #1f326926}.users-hero:after{content:"";position:absolute;right:-45px;top:-115px;width:245px;height:245px;border:29px solid rgba(255,255,255,.07);border-radius:50%}.users-hero h2{margin:3px 0 6px;color:#fff;font-size:2rem;letter-spacing:-.025em}.users-hero p:not(.users-eyebrow){margin:0;color:#ffffffc7;font-size:.88rem}.users-eyebrow{margin:0;color:#c0d0ff;font-size:.68rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.users-add-button,.users-section-add{display:flex;align-items:center;gap:8px;margin:0;border-radius:9px;font-size:.76rem;font-weight:650}.users-add-button{position:relative;z-index:1;padding:11px 16px;border:1px solid rgba(255,255,255,.22);background:#fff;color:#294cae;box-shadow:0 7px 18px #0d18392e}.users-add-button:hover{background:#f2f5ff;color:#203f9a;transform:translateY(-1px)}.users-add-button svg,.users-section-add svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.users-hero-actions{position:relative;z-index:1;display:flex;align-items:center;gap:9px}.users-promote-button{border-color:#ffffff5c;background:#ffffff1f;color:#fff;box-shadow:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.users-promote-button:hover{background:#ffffff36;color:#fff}.employee-promotion-fields{margin-bottom:15px}.promotion-role-heading{margin-top:4px}.user-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.user-stats article{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:14px 15px;border:1px solid #e1e7f1;border-radius:13px;background:#fff;box-shadow:0 5px 17px #18274a0b}.user-stats span{align-self:center;color:#5d6a80;font-size:.7rem;font-weight:650}.user-stats strong{grid-row:1/3;grid-column:2;align-self:center;color:#21304e;font-size:1.45rem;line-height:1}.user-stats small{color:#929caf;font-size:.62rem}.superadmin-panel,.tenant-users-panel{margin-bottom:18px;overflow:visible;border:1px solid #e1e7f1;border-radius:17px;background:#fff;box-shadow:0 9px 28px #18274a0f}.superadmin-panel{border-color:#dbe3f5}.users-section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;border-bottom:1px solid #e8edf4;background:linear-gradient(110deg,#f9faff,#f4f7ff);border-radius:17px 17px 0 0}.users-section-title{display:flex;align-items:center;gap:11px}.users-section-title>span{display:grid;width:38px;height:38px;place-items:center;flex:0 0 38px;border-radius:11px;background:#e7edff;color:#3d5fc2}.superadmin-panel .users-section-title>span{background:#eee9ff;color:#6748b8}.users-section-title svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.users-section-title h3{margin:0;color:#1e2c48;font-size:.9rem;font-weight:650}.users-section-title p{margin:2px 0 0;color:#8290a5;font-size:.68rem}.users-section-add{padding:8px 11px;border:1px solid #cbd6ef;background:#fff;color:#4260b6;box-shadow:none}.users-section-add:hover{border-color:#afc0ed;background:#eef3ff;color:#3157bd}.users-count-pill,.user-self-pill{padding:5px 9px;border-radius:999px;background:#eaf0ff;color:#3d5fbd;font-size:.65rem;font-weight:650;white-space:nowrap}.user-self-pill{background:#edf7f0;color:#34724b}.users-table-scroll{overflow-x:auto;border-radius:0 0 17px 17px}.users-table{min-width:970px;margin:0;border-radius:0;box-shadow:none}.superadmin-table{min-width:760px}.users-table th{padding-top:12px;padding-bottom:12px;background:#fbfcfe;color:#738096;font-size:.65rem;letter-spacing:.045em;text-transform:uppercase}.users-table td{padding-top:12px;padding-bottom:12px;vertical-align:middle}.users-table tbody tr:last-child td{border-bottom:0}.user-identity{display:flex;align-items:center;gap:10px}.user-identity>span{display:grid;width:36px;height:36px;place-items:center;flex:0 0 36px;border:1px solid #cfdbf7;border-radius:11px;background:linear-gradient(145deg,#edf3ff,#dfe8ff);color:#4261b6;font-size:.66rem;font-weight:750}.superadmin-table .user-identity>span{border-color:#ddd3f5;background:#f1edff;color:#6a4ab4}.user-identity>div{display:flex;min-width:0;flex-direction:column;gap:2px}.user-identity strong{color:#263550;font-size:.78rem;font-weight:600}.user-identity small{color:#909bae;font-size:.62rem}.user-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}td.actions .user-action-button{position:relative;display:grid;width:34px;height:34px;place-items:center;margin:0;padding:0;border:1px solid #dfe5ef;border-radius:9px;background:#fff;color:#63728d;box-shadow:none;transition:.15s}.user-action-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.user-action-button:hover{border-color:#bdccef!important;background:#f0f4ff!important;color:#3157bd!important;transform:translateY(-1px)}.user-action-button.invite{color:#39745a!important}.user-action-button.is-danger{color:#a85a59!important}.user-action-button.is-danger:hover{border-color:#edc4c0!important;background:#fff1ef!important;color:#b42318!important}.user-action-button:after{content:attr(data-tooltip);position:absolute;z-index:100;right:0;bottom:calc(100% + 8px);width:max-content;padding:6px 8px;border-radius:7px;background:#172442;color:#fff;font-size:.66rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(3px);transition:.14s}.user-action-button:hover:after,.user-action-button:focus-visible:after{opacity:1;transform:translateY(0)}.users-empty{display:grid;min-height:130px;place-items:center;padding:25px;color:#8b96a9;font-size:.76rem}.modal.modal-user-editor{width:min(900px,calc(100vw - 32px));max-width:900px;max-height:none;padding:0;overflow:hidden;background:#f4f6fb}.modal-user-editor>h3{margin:0;padding:22px 26px 18px;border-bottom:1px solid #e4e9f2;background:#fff;color:#172442;font-size:1.22rem}.modal-user-editor>.modal-form{display:flex;flex-direction:column;padding:18px 24px 0}.user-form-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 15px;border:1px solid #dbe4f5;border-radius:14px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.user-form-intro>span{display:grid;width:42px;height:42px;place-items:center;flex:0 0 42px;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be38}.user-form-intro svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.user-form-intro strong{color:#172442;font-size:.94rem;font-weight:650}.user-form-intro p{margin:3px 0 0;color:#68768e;font-size:.75rem}.user-form-tabs{display:flex;gap:5px;margin-bottom:12px;padding:5px;border:1px solid #dfe5f0;border-radius:12px;background:#e9edf5}.user-form-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;padding:9px;border:0;border-radius:8px;background:transparent;color:#637088;font-size:.78rem;font-weight:550;box-shadow:none}.user-form-tabs button:hover{background:#ffffffa3;color:#2f4c9f}.user-form-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 3px 10px #1c2f5b1c}.user-form-tabs button span,.user-panel-heading>span{display:grid;width:25px;height:25px;place-items:center;flex:0 0 25px;border-radius:7px;background:#dce4f8;color:#5268a8;font-size:.62rem;font-weight:800}.user-form-tabs button[aria-selected=true] span{background:#4d6de2;color:#fff}.user-form-panel{min-height:330px;padding:18px;border:1px solid #e2e7f0;border-radius:15px;background:#fff;box-shadow:0 5px 18px #1927480b}.user-form-panel[hidden]{display:none!important}.user-panel-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:17px;padding-bottom:13px;border-bottom:1px solid #edf0f5}.user-panel-heading h4{margin:0;color:#172442;font-size:.94rem;font-weight:650}.user-panel-heading p{margin:3px 0 0;color:#7b879b;font-size:.74rem}.user-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 17px}.user-form-grid .wide{grid-column:1/-1}.user-form-grid label{min-width:0;margin:0;color:#44516a;font-size:.78rem;font-weight:550}.user-form-grid label em,.user-tool-fields label em{margin-left:5px;color:#7382a0;font-size:.62rem;font-style:normal;letter-spacing:.035em;text-transform:uppercase}.user-form-grid input{width:100%;min-height:39px;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.user-form-grid input:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.user-form-grid input:disabled{background:#f2f4f8;color:#6e7a8d}.user-active-option,.user-role-option,.user-site-role,.user-company-option{display:flex!important;align-items:flex-start;gap:10px;border:1px solid #e0e6f0;border-radius:10px;background:#fafbfe;cursor:pointer;transition:.15s}.user-active-option{padding:11px 12px}.user-active-option input,.user-role-option input,.user-site-role input,.user-company-option input{width:auto;min-height:0;margin:3px 0 0;flex:0 0 auto}.user-active-option span,.user-role-option span{display:flex;flex-direction:column;gap:2px}.user-active-option b,.user-role-option b{color:#283751;font-size:.78rem;font-weight:600}.user-active-option small,.user-role-option small{color:#7f8ba0;font-size:.67rem;font-weight:400;line-height:1.35}.user-active-option:has(input:checked){border-color:#b7dbc2;background:#edf8f0}.user-role-grid,.user-site-role-grid,.user-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.user-role-option{padding:11px 12px}.user-role-option:hover,.user-site-role:hover,.user-company-option:hover{border-color:#bdccef;background:#f3f6ff}.user-role-option:has(input:checked),.user-site-role:has(input:checked),.user-company-option:has(input:checked){border-color:#aebfed;background:#edf3ff}.user-site-role-heading{display:flex;flex-direction:column;gap:2px;margin:16px 0 9px}.user-site-role-heading strong{color:#33415a;font-size:.78rem;font-weight:650}.user-site-role-heading small{color:#8792a5;font-size:.67rem}.user-site-role{align-items:center;padding:9px 10px;color:#43516a;font-size:.74rem;font-weight:550}.user-company-option{align-items:center;padding:10px}.user-company-option>span{display:grid;width:32px;height:32px;place-items:center;flex:0 0 32px;border-radius:9px;background:#e9efff;color:#4865b7}.user-company-option svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.user-company-option>div{display:flex;min-width:0;flex-direction:column;gap:2px}.user-company-option b{overflow:hidden;color:#2c3a55;font-size:.74rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.user-company-option small{color:#8a95a7;font-size:.62rem}.user-form-empty{padding:14px;border:1px dashed #dce3ee;border-radius:10px;color:#8a96a9;font-size:.72rem;text-align:center}.modal-user-editor .modal-actions{margin:14px -24px 0;padding:15px 24px;border-top:1px solid #dde3ed;background:#fff;box-shadow:0 -8px 22px #1927480b}.modal.modal-user-tool{max-width:590px;padding:0;overflow:hidden;background:#f5f7fb}.modal-user-tool>h3{margin:0;padding:20px 22px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-user-tool>.modal-form{padding:19px 22px 0}.user-tool-intro{display:flex;align-items:center;gap:12px;margin-bottom:15px;padding:13px 14px;border:1px solid #dbe4f5;border-radius:13px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.user-tool-intro>span{display:grid;width:43px;height:43px;place-items:center;flex:0 0 43px;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be33}.user-tool-intro svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.user-tool-intro strong{color:#172442;font-size:.88rem;font-weight:650}.user-tool-intro p{margin:3px 0 0;color:#6f7c93;font-size:.71rem;line-height:1.4}.user-tool-fields{padding:16px;border:1px solid #e2e7f0;border-radius:13px;background:#fff}.user-tool-fields label{display:block;margin:0 0 13px;color:#44516a;font-size:.75rem;font-weight:550}.user-tool-fields input{width:100%;min-height:40px;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.user-tool-note{padding:10px 11px;border:1px solid #dfe6f4;border-radius:9px;background:#edf3ff;color:#687794;font-size:.68rem;line-height:1.4}.modal-user-tool .modal-actions{margin:17px -22px 0;padding:14px 22px;border-top:1px solid #e0e5ee;background:#fff}@media(max-width:900px){.user-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.users-hero{min-height:145px;align-items:flex-start;flex-direction:column;gap:16px;padding:21px;border-radius:17px}.users-hero h2{font-size:1.5rem}.users-add-button{width:100%;justify-content:center}.users-hero-actions{width:100%;flex-direction:column}.users-section-heading{align-items:flex-start;flex-direction:column}.users-section-add{width:100%;justify-content:center}.modal.modal-user-editor{width:calc(100vw - 18px);max-height:96vh;overflow-y:auto}.modal-user-editor>h3{padding:18px}.modal-user-editor>.modal-form{padding:14px 14px 0}.user-form-tabs{overflow-x:auto;justify-content:flex-start}.user-form-tabs button{min-width:145px;flex:0 0 auto}.user-form-panel{min-height:0;padding:15px}.user-form-grid,.user-role-grid,.user-site-role-grid,.user-company-grid{grid-template-columns:1fr}.user-form-grid .wide{grid-column:auto}.modal-user-editor .modal-actions{margin:14px -14px 0;padding:12px 14px}}.install-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:190px;margin-bottom:18px;padding:30px 35px;overflow:hidden;border-radius:23px;background:linear-gradient(120deg,#13203e,#273b79 55%,#4767d1);color:#fff;box-shadow:0 17px 40px #1f32692b}.install-hero:before,.install-hero:after{content:"";position:absolute;border:28px solid rgba(255,255,255,.055);border-radius:50%}.install-hero:before{right:-65px;top:-130px;width:285px;height:285px}.install-hero:after{right:145px;bottom:-105px;width:180px;height:180px}.install-hero h2{margin:4px 0 8px;color:#fff;font-size:2.05rem;letter-spacing:-.03em}.install-hero>div>p:not(.install-eyebrow){max-width:730px;margin:0;color:#ffffffc7;font-size:.9rem;line-height:1.5}.install-eyebrow{margin:0;color:#bfd0ff;font-size:.68rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.install-hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.install-hero-meta span{display:flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:#ffffff14;color:#e4eaff;font-size:.65rem;font-weight:550}.install-hero-meta svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.install-hero-device{position:relative;z-index:1;display:grid;width:82px;height:82px;place-items:center;flex:0 0 82px;border:1px solid rgba(255,255,255,.2);border-radius:23px;background:#ffffff1a;box-shadow:0 10px 25px #0b163633;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.install-hero-device svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.install-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:14px;padding:6px;border:1px solid #dfe5f0;border-radius:15px;background:#e9edf5}.install-tabs.two-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.install-tabs button{display:flex;align-items:center;justify-content:center;gap:10px;margin:0;padding:11px 13px;border:0;border-radius:10px;background:transparent;color:#637088;text-align:left;box-shadow:none}.install-tabs button:hover{background:#ffffffa3;color:#2f4c9f}.install-tabs button[aria-selected=true]{background:#fff;color:#294cae;box-shadow:0 4px 12px #1c2f5b1c}.install-tabs button>svg{width:21px;height:21px;flex:0 0 21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.install-tabs button span{display:flex;flex-direction:column;gap:2px}.install-tabs button b{font-size:.76rem;font-weight:650}.install-tabs button small{color:#8a95a7;font-size:.61rem;font-weight:400}.install-panel{padding:20px;border:1px solid #e1e7f0;border-radius:17px;background:#fff;box-shadow:0 9px 28px #18274a0f}.install-panel[hidden]{display:none!important}.install-panel-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid #edf0f5}.install-panel-heading>span{display:grid;width:31px;height:31px;place-items:center;flex:0 0 31px;border-radius:9px;background:#e9efff;color:#3d5dc1;font-size:.67rem;font-weight:800}.install-panel-heading h3{margin:0;color:#182641;font-size:1rem;font-weight:650}.install-panel-heading p{margin:3px 0 0;color:#7c889d;font-size:.73rem}.install-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.install-step{display:flex;align-items:flex-start;gap:12px;min-height:112px;padding:15px;border:1px solid #e2e7f0;border-radius:13px;background:#fafbfe}.install-step>span,.install-os-steps>li>span{display:grid;width:30px;height:30px;place-items:center;flex:0 0 30px;border-radius:9px;background:linear-gradient(145deg,#5878ef,#3d5fc7);color:#fff;font-size:.69rem;font-weight:750;box-shadow:0 4px 10px #3d5fc72e}.install-step>div{min-width:0;flex:1}.install-step h4,.install-os-steps h4{margin:0;color:#273650;font-size:.82rem;font-weight:650}.install-step p,.install-os-steps p{margin:5px 0 0;color:#718096;font-size:.7rem;line-height:1.48}.install-command{display:flex;align-items:stretch;min-width:0;margin-top:10px;overflow:hidden;border:1px solid #273857;border-radius:8px;background:#17233a}.install-command code{min-width:0;flex:1;padding:10px 11px;overflow-x:auto;background:transparent;color:#dce7ff;font-family:SFMono-Regular,Consolas,monospace;font-size:.66rem;white-space:nowrap}.install-copy{display:grid;width:40px;place-items:center;flex:0 0 40px;margin:0;padding:0;border:0;border-left:1px solid rgba(255,255,255,.13);border-radius:0;background:#ffffff12;color:#bcd0ff;box-shadow:none}.install-copy:hover{background:#ffffff26;color:#fff}.install-copy svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.install-copy span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.install-downloads{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:10px;margin-top:14px;padding:13px;border:1px solid #e2e7f0;border-radius:13px;background:#f7f9fd}.install-download-heading,.install-card-title{display:flex;align-items:center;gap:10px}.install-download-heading>span,.install-card-title>span{display:grid;width:36px;height:36px;place-items:center;flex:0 0 36px;border-radius:10px;background:#e7edff;color:#3f5fba}.install-download-heading svg,.install-card-title svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.install-download-heading h4,.install-card-title h4{margin:0;color:#283751;font-size:.78rem;font-weight:650}.install-download-heading p,.install-card-title p{margin:2px 0 0;color:#8692a5;font-size:.64rem}.install-downloads>a{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #dfe5ef;border-radius:10px;background:#fff;text-decoration:none}.install-downloads>a:hover{border-color:#bdccef;background:#f1f5ff}.install-downloads>a>span{display:grid;width:31px;height:31px;place-items:center;border-radius:8px;background:#edf2ff;color:#4b67b9}.install-downloads>a svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.install-downloads>a div{display:flex;min-width:0;flex-direction:column;gap:2px}.install-downloads>a b{color:#33425d;font-size:.72rem}.install-downloads>a small{color:#8c97a9;font-size:.61rem}.install-alert{display:flex;align-items:flex-start;gap:8px;margin-top:13px;padding:10px 11px;border:1px solid #dce5f5;border-radius:9px;background:#edf3ff;color:#687794;font-size:.68rem;line-height:1.4}.install-alert b{color:#3655ad}.install-alert.warning{margin:0 0 14px;border-color:#ead8a8;background:#fff9e9;color:#856b2d}.install-alert.warning b{color:#765b18}.install-os-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.65fr);gap:15px;align-items:start}.install-os-steps{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none}.install-os-steps>li{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #e2e7f0;border-radius:12px;background:#fafbfe}.install-os-steps>li>div{min-width:0;flex:1}.install-os-steps ul{margin:8px 0 0;padding-left:18px;color:#66748b;font-size:.69rem;line-height:1.55}.install-os-steps code{padding:2px 5px;border-radius:4px;background:#edf1f7;color:#3a4b6c;font-size:.66rem}.install-external{display:inline-flex;align-items:center;gap:5px;margin-top:8px;color:#3157bd;font-size:.68rem;font-weight:600;text-decoration:none}.install-external svg,.install-checklist>a svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.install-checklist{position:sticky;top:14px;padding:16px;border:1px solid #dce4f3;border-radius:14px;background:linear-gradient(145deg,#f8faff,#f0f4ff)}.install-checklist h4{margin:0 0 12px;color:#273650;font-size:.82rem}.install-checklist label{display:flex;align-items:flex-start;gap:8px;margin:8px 0;color:#536178;font-size:.69rem;cursor:pointer}.install-checklist input{margin:2px 0 0}.install-info{margin:14px 0;padding:11px;border:1px solid #dce5f5;border-radius:9px;background:#fff}.install-info b{color:#3858b3;font-size:.68rem}.install-info p{margin:4px 0 0;color:#748198;font-size:.65rem;line-height:1.45}.install-checklist>a{display:flex;align-items:center;gap:5px;color:#3157bd;font-size:.67rem;font-weight:600;text-decoration:none}.install-wiring-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.install-pinout,.install-diagnostics{padding:16px;border:1px solid #e2e7f0;border-radius:14px;background:#fafbfe}.install-pinout table{margin:14px 0 0;box-shadow:none;border:1px solid #e2e7f0}.install-pinout th{background:#f1f4f9;font-size:.65rem}.install-pinout td{font-size:.72rem}.install-diagnostics>label{display:block;margin-top:14px;color:#536178;font-size:.7rem;font-weight:600}.install-diagnostic-list{margin-top:14px;padding:12px;border:1px solid #e2e7f0;border-radius:10px;background:#fff}.install-diagnostic-list p{margin:0 0 9px;color:#68758a;font-size:.68rem;line-height:1.45}.install-diagnostic-list p:last-child{margin:0}.install-diagnostic-list b{color:#34445e}.install-aftercare{display:flex;align-items:center;gap:12px;margin-top:14px;padding:14px 16px;border:1px solid #cfe5d5;border-radius:13px;background:#f0f9f2}.install-aftercare>span{display:grid;width:38px;height:38px;place-items:center;flex:0 0 38px;border-radius:11px;background:#dcefe1;color:#34744a}.install-aftercare svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.install-aftercare>div{min-width:0;flex:1}.install-aftercare h4{margin:0;color:#31573e;font-size:.78rem}.install-aftercare p{margin:3px 0 0;color:#65816e;font-size:.67rem}.install-aftercare>a{padding:8px 11px;border:1px solid #bcd9c4;border-radius:8px;background:#fff;color:#34744a;font-size:.68rem;font-weight:600;text-decoration:none;white-space:nowrap}.install-footnote{margin:13px 0 0;color:#919bad;font-size:.65rem;text-align:center}@media(max-width:900px){.install-os-layout,.install-wiring-grid{grid-template-columns:1fr}.install-checklist{position:static}.install-downloads{grid-template-columns:1fr 1fr}.install-download-heading{grid-column:1/-1}}@media(max-width:680px){.install-hero{min-height:170px;padding:22px;border-radius:18px}.install-hero h2{font-size:1.55rem}.install-hero-device{display:none}.install-tabs{display:flex;overflow-x:auto}.install-tabs button{min-width:205px;flex:0 0 auto}.install-panel{padding:15px}.install-step-grid,.install-downloads{grid-template-columns:1fr}.install-download-heading{grid-column:auto}.install-aftercare{align-items:flex-start;flex-wrap:wrap}.install-aftercare>a{width:100%;text-align:center}}.devices-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:145px;margin-bottom:17px;padding:27px 31px;overflow:hidden;border-radius:21px;background:linear-gradient(120deg,#172442,#293e7e 58%,#4968d1);color:#fff;box-shadow:0 15px 36px #1f326926}.devices-hero:after{content:"";position:absolute;right:-45px;top:-115px;width:245px;height:245px;border:29px solid rgba(255,255,255,.07);border-radius:50%}.devices-hero h2{margin:3px 0 6px;color:#fff;font-size:2rem;letter-spacing:-.025em}.devices-hero p:not(.devices-eyebrow){margin:0;color:#ffffffc7;font-size:.88rem}.devices-eyebrow{margin:0;color:#c0d0ff;font-size:.68rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.devices-claim-button{position:relative;z-index:1;display:flex;align-items:center;gap:8px;margin:0;padding:11px 16px;border:1px solid rgba(255,255,255,.22);border-radius:10px;background:#fff;color:#294cae;font-size:.78rem;font-weight:650;box-shadow:0 7px 18px #0d18392e}.devices-claim-button:hover{background:#f2f5ff;color:#203f9a;transform:translateY(-1px)}.devices-claim-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.device-filter-panel{margin-bottom:12px;padding:17px 18px 13px;border:1px solid #dce4f1;border-radius:16px;background:linear-gradient(120deg,#fff,#f6f8fd);box-shadow:0 7px 22px #18274a0d}.device-filter-heading{display:flex;align-items:center;gap:11px;margin-bottom:13px}.device-filter-heading>span{display:grid;width:39px;height:39px;place-items:center;flex:0 0 39px;border-radius:11px;background:#e8eeff;color:#4262bd}.device-filter-heading svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.device-filter-heading>div{min-width:0;flex:1}.device-filter-heading strong,.device-filter-heading small{display:block}.device-filter-heading strong{color:#23324f;font-size:.83rem}.device-filter-heading small{margin-top:2px;color:#7d899e;font-size:.66rem}.device-filter-heading button{margin:0;padding:7px 10px;border:1px solid #d9e1ee;background:#fff;color:#586881;font-size:.66rem;box-shadow:none}.device-filter-heading button:hover{border-color:#bdccef;background:#f0f4ff;color:#3157bd}.device-filter-grid{display:grid;grid-template-columns:minmax(250px,1.65fr) repeat(3,minmax(150px,.7fr));gap:10px}.device-filter-grid label{margin:0;color:#65728a;font-size:.65rem;font-weight:650}.device-filter-grid input,.device-filter-grid select{height:40px;margin-top:5px;border:1px solid #d5deec;border-radius:9px;background:#fff;box-shadow:none;color:#263653;font-size:.72rem}.device-filter-grid input:focus,.device-filter-grid select:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21c}.device-filter-summary{min-height:19px;padding-top:8px;color:#728098;font-size:.64rem}.device-filter-summary span{display:inline-flex;padding:3px 7px;border-radius:999px;background:#edf2ff;color:#4c63ad}.device-site-badge{display:inline-flex;width:max-content;max-width:190px;margin-top:4px;padding:4px 8px;overflow:hidden;border-radius:999px;background:#eaf1ff;color:#405dac;font-size:.61rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.device-site-badge.unallocated{background:#f1f2f5;color:#6f7a8c}.device-filter-empty[hidden]{display:none}.device-filter-empty{min-height:170px;border-top:1px solid #e9edf4}.device-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.device-stats article{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:14px 15px;border:1px solid #e1e7f1;border-radius:13px;background:#fff;box-shadow:0 5px 17px #18274a0b}.device-stats article.online{border-color:#cce4d4;background:linear-gradient(145deg,#fff,#f3faf5)}.device-stats span{align-self:center;color:#5d6a80;font-size:.7rem;font-weight:650}.device-stats strong{grid-row:1/3;grid-column:2;align-self:center;color:#21304e;font-size:1.45rem;line-height:1}.device-stats article.online strong{color:#2d7a49}.device-stats small{color:#929caf;font-size:.62rem}.devices-list-shell{container-name:device-list;container-type:inline-size;overflow:visible;border:1px solid #e1e7f1;border-radius:17px;background:#fff;box-shadow:0 10px 30px #18274a11}.devices-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 18px;border-bottom:1px solid #e8edf4;background:linear-gradient(110deg,#f9faff,#f4f7ff);border-radius:17px 17px 0 0}.devices-toolbar-title{display:flex;align-items:center;gap:10px}.devices-toolbar-title>span{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:#e7edff;color:#3d5fc2}.devices-toolbar-title svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.devices-toolbar-title strong{display:block;color:#1f2d49;font-size:.83rem;font-weight:650}.devices-toolbar-title small{display:block;margin-top:2px;color:#8490a3;font-size:.66rem}.devices-toolbar label{display:flex;align-items:center;gap:8px;margin:0;color:#5a677e;font-size:.72rem;font-weight:600}.devices-toolbar select{min-width:210px;height:38px;margin:0;border:1px solid #d6deeb;border-radius:7px;background:#fff;box-shadow:none}.devices-table-scroll{overflow-x:auto;border-radius:0 0 17px 17px}.devices-table{min-width:1120px;margin:0;border-radius:0;box-shadow:none}.devices-table th{padding-top:12px;padding-bottom:12px;background:#fbfcfe;color:#738096;font-size:.65rem;letter-spacing:.045em;text-transform:uppercase}.devices-table td{padding-top:12px;padding-bottom:12px;vertical-align:middle}.devices-table tbody tr:last-child td{border-bottom:0}.device-identity,.device-network>span,.device-version{display:flex;align-items:center;gap:9px}.device-identity>span{display:grid;width:37px;height:37px;place-items:center;flex:0 0 37px;border-radius:11px;background:linear-gradient(145deg,#edf2ff,#dce6ff);color:#3c5fbd}.device-identity svg,.device-network svg,.device-version svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.device-identity>div{display:flex;min-width:0;flex-direction:column;gap:3px}.device-identity strong{color:#25344f;font-size:.78rem;font-weight:600}.device-identity code{width:max-content;padding:2px 5px;border-radius:4px;background:#f0f3f8;color:#647087;font-size:.61rem;letter-spacing:.02em}.device-network{display:flex;min-width:160px;flex-direction:column;gap:3px}.device-network>span{gap:6px;color:#44536d}.device-network svg{width:15px;height:15px;color:#5270c5}.device-network b{font-size:.71rem;font-weight:600}.device-network small{color:#8a95a8;font-size:.61rem}.device-version{width:max-content;padding:6px 8px;border:1px solid #d9e6dc;border-radius:8px;background:#f2f9f4;color:#36724b}.device-version.outdated{border-color:#ead9aa;background:#fff9e9;color:#8b6a1f}.device-version svg{width:15px;height:15px}.device-version b{font-size:.69rem}.device-version small{font-size:.58rem}.device-last-seen{display:flex;flex-direction:column;gap:3px;color:#526078;font-size:.68rem;white-space:nowrap}.device-last-seen small{color:#939dae;font-size:.59rem}.device-state{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;font-size:.64rem;font-weight:650;white-space:nowrap}.device-state i{width:7px;height:7px;border-radius:50%;background:currentColor}.device-state.online{background:#e8f6ec;color:#2f7b49}.device-state.offline{background:#f1f3f6;color:#747f91}.device-state.inactive{background:#fff1ef;color:#a4554e}.device-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}td.actions .device-action-button{position:relative;display:grid;width:34px;height:34px;place-items:center;margin:0;padding:0;border:1px solid #dfe5ef;border-radius:9px;background:#fff;color:#63728d;box-shadow:none;transition:.15s}.device-action-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.device-action-button:hover{border-color:#bdccef!important;background:#f0f4ff!important;color:#3157bd!important;transform:translateY(-1px)}.device-action-button.messages{color:#39745a!important}.device-action-button.is-danger{color:#a85a59!important}.device-action-button.is-danger:hover{border-color:#edc4c0!important;background:#fff1ef!important;color:#b42318!important}.device-action-button:after{content:attr(data-tooltip);position:absolute;z-index:100;right:0;bottom:calc(100% + 8px);width:max-content;padding:6px 8px;border-radius:7px;background:#172442;color:#fff;font-size:.66rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(3px);transition:.14s}.device-action-button:hover:after,.device-action-button:focus-visible:after{opacity:1;transform:translateY(0)}@container device-list (max-width:1320px){.devices-table-scroll{overflow:visible;background:#f7f9fd;border-radius:0 0 17px 17px}.devices-table{display:block;width:100%;min-width:0;background:transparent}.devices-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.devices-table tbody{display:grid;gap:10px;padding:12px}.devices-table tbody tr[data-device-row]{display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(135px,.75fr) minmax(115px,.65fr) minmax(178px,.8fr);grid-template-areas:"identity site state actions" "network version seen actions";gap:12px 17px;padding:15px;border:1px solid #e0e6f0;border-radius:14px;background:#fff;box-shadow:0 5px 15px #18274a0a}.devices-table tbody tr[data-device-row][hidden]{display:none!important}.devices-table td{display:flex;min-width:0;align-items:flex-start;flex-direction:column;gap:6px;padding:0;border:0;background:transparent}.devices-table td:before{content:attr(data-label);color:#8691a4;font-size:.57rem;font-weight:750;letter-spacing:.045em;text-transform:uppercase}.devices-table td:nth-child(1){grid-area:identity}.devices-table td:nth-child(2){grid-area:site}.devices-table td:nth-child(3){grid-area:network}.devices-table td:nth-child(4){grid-area:version}.devices-table td:nth-child(5){grid-area:seen}.devices-table td:nth-child(6){grid-area:state}.devices-table td:nth-child(7){grid-area:actions}.devices-table td.actions{justify-content:center;padding-left:15px;border-left:1px solid #e6eaf2}.devices-table .device-site-badge{margin:0}.devices-table .device-network{min-width:0}.devices-table .device-row-actions{max-width:178px;flex-wrap:wrap;justify-content:flex-start}}@container device-list (max-width:720px){.devices-table tbody tr[data-device-row]{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity state" "site site" "network network" "version seen" "actions actions"}.devices-table td.actions{padding:12px 0 0;border-top:1px solid #e6eaf2;border-left:0}.devices-table .device-row-actions{width:100%;max-width:none;justify-content:flex-start}}@container device-list (max-width:460px){.devices-table tbody{padding:9px}.devices-table tbody tr[data-device-row]{grid-template-columns:1fr;grid-template-areas:"identity" "state" "site" "network" "version" "seen" "actions"}}.devices-empty{display:flex;min-height:260px;align-items:center;justify-content:center;flex-direction:column;padding:35px;color:#7d899d;text-align:center}.devices-empty>span{display:grid;width:60px;height:60px;place-items:center;margin-bottom:12px;border-radius:18px;background:#edf2ff;color:#4b68bd}.devices-empty>span svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.devices-empty strong{color:#34435d;font-size:.88rem}.devices-empty p{max-width:470px;margin:5px 0 14px;font-size:.71rem}.devices-empty button{display:flex;align-items:center;gap:7px}.devices-empty button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.modal.modal-device-tool,.modal.modal-device-info{max-width:620px;padding:0;overflow:hidden;background:#f5f7fb}.modal-device-tool>h3,.modal-device-info>h3,.modal-device-messages>h3{margin:0;padding:20px 22px 17px;border-bottom:1px solid #e3e8f1;background:#fff;color:#172442;font-size:1.08rem}.modal-device-tool>.modal-form,.modal-device-info>.modal-form,.modal-device-messages>.modal-form{padding:19px 22px 0}.device-tool-intro{display:flex;align-items:center;gap:12px;margin-bottom:15px;padding:13px 14px;border:1px solid #dbe4f5;border-radius:13px;background:linear-gradient(120deg,#eaf0ff,#f7f9ff)}.device-tool-intro>span{display:grid;width:43px;height:43px;place-items:center;flex:0 0 43px;border-radius:12px;background:linear-gradient(145deg,#5878ef,#3454be);color:#fff;box-shadow:0 6px 14px #3454be33}.device-tool-intro svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.device-tool-intro strong{color:#172442;font-size:.88rem;font-weight:650}.device-tool-intro p{margin:3px 0 0;color:#6f7c93;font-size:.71rem;line-height:1.4}.device-tool-fields{padding:16px;border:1px solid #e2e7f0;border-radius:13px;background:#fff}.device-tool-fields>label{display:block;margin:0 0 13px;color:#44516a;font-size:.75rem;font-weight:550}.device-tool-fields label em{margin-left:5px;color:#7f8ca1;font-size:.61rem;font-style:normal;text-transform:uppercase}.device-tool-fields input,.device-tool-fields select{width:100%;min-height:40px;margin-top:6px;border:1px solid #d7deea;border-radius:6px;background:#fff;box-shadow:none}.device-tool-fields input:focus,.device-tool-fields select:focus{outline:0;border-color:#617ceb;box-shadow:0 0 0 3px #4f6be21f}.device-tool-fields input:disabled{background:#f1f3f7;color:#778297}.device-pairing-code{font-family:SFMono-Regular,Consolas,monospace!important;font-size:1.25rem!important;font-weight:650;letter-spacing:.28em;text-align:center;text-transform:uppercase}.device-tool-note{padding:10px 11px;border:1px solid #dfe6f4;border-radius:9px;background:#edf3ff;color:#687794;font-size:.68rem;line-height:1.4}.device-active-option{display:flex!important;align-items:flex-start;gap:10px!important;margin:4px 0 0!important;padding:11px 12px;border:1px solid #e0e6f0;border-radius:10px;background:#fafbfe;cursor:pointer}.device-active-option input{width:auto;min-height:0;margin:3px 0 0}.device-active-option span{display:flex;flex-direction:column;gap:2px}.device-active-option b{color:#283751;font-size:.77rem}.device-active-option small{color:#7f8ba0;font-size:.66rem;font-weight:400}.device-active-option:has(input:checked){border-color:#b7dbc2;background:#edf8f0}.modal-device-tool .modal-actions,.modal-device-info .modal-actions,.modal-device-messages .modal-actions{margin:17px -22px 0;padding:14px 22px;border-top:1px solid #e0e5ee;background:#fff}.device-info-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px;padding:11px 12px;border:1px solid #e2e7f0;border-radius:10px;background:#fff}.device-info-status>span:last-child{color:#7f8b9e;font-size:.66rem}.device-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.device-info-grid article{display:flex;min-width:0;flex-direction:column;gap:5px;padding:12px;border:1px solid #e2e7f0;border-radius:10px;background:#fff}.device-info-grid article>span{color:#8792a5;font-size:.62rem;text-transform:uppercase}.device-info-grid article>strong{overflow:hidden;color:#33415a;font-size:.75rem;font-weight:600;text-overflow:ellipsis}.device-info-grid code{font-size:.69rem}.modal.modal-device-messages{width:min(880px,calc(100vw - 32px));max-width:880px;padding:0;overflow:hidden;background:#f5f7fb}.device-message-composer{display:flex;gap:8px;margin-bottom:13px;padding:12px;border:1px solid #e1e7f0;border-radius:12px;background:#fff}.device-message-composer input{min-width:0;flex:1;margin:0;border:1px solid #d7deea;border-radius:7px}.device-message-composer button{display:flex;align-items:center;gap:7px;margin:0;padding:8px 12px;font-size:.72rem;white-space:nowrap}.device-message-composer button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.device-message-list{display:flex;max-height:440px;overflow-y:auto;flex-direction:column;gap:8px}.device-message-row{display:grid;grid-template-columns:28px minmax(180px,1fr) 120px auto;align-items:center;gap:9px;padding:10px;border:1px solid #e1e7f0;border-radius:11px;background:#fff}.device-message-order{display:grid;width:27px;height:27px;place-items:center;border-radius:8px;background:#edf2ff;color:#4a64b4;font-size:.65rem;font-weight:750}.device-message-row>.msg-text{width:100%;margin:0;border:1px solid #d7deea;border-radius:6px}.device-message-active{display:flex!important;align-items:flex-start;gap:7px;margin:0!important}.device-message-active input{margin:3px 0 0}.device-message-active span{display:flex;flex-direction:column;gap:1px}.device-message-active b{color:#42506a;font-size:.68rem}.device-message-active small{color:#919bad;font-size:.59rem}.device-message-actions{display:flex;gap:4px}.device-message-button{display:grid;width:31px;height:31px;place-items:center;margin:0;padding:0;border:1px solid #dfe5ef;border-radius:8px;background:#fff;color:#62718b;box-shadow:none}.device-message-button:hover{border-color:#bdccef;background:#f0f4ff;color:#3157bd}.device-message-button:disabled{opacity:.3}.device-message-button.danger{color:#a85a59}.device-message-button.danger:hover{border-color:#edc4c0;background:#fff1ef;color:#b42318}.device-message-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.device-messages-empty{display:flex;min-height:160px;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #dce3ee;border-radius:12px;background:#fafbfe;color:#8490a3;text-align:center}.device-messages-empty>span{display:grid;width:43px;height:43px;place-items:center;margin-bottom:8px;border-radius:12px;background:#eaf0ff;color:#4a66bb}.device-messages-empty svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.device-messages-empty strong{color:#43516a;font-size:.76rem}.device-messages-empty p{margin:3px 0 0;font-size:.65rem}@media(max-width:1100px){.device-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.device-filter-search{grid-column:1/-1}.device-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.device-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.devices-hero{min-height:145px;align-items:flex-start;flex-direction:column;gap:16px;padding:21px;border-radius:17px}.devices-hero h2{font-size:1.55rem}.devices-claim-button{width:100%;justify-content:center}.device-filter-panel{padding:14px}.device-filter-heading{align-items:flex-start;flex-wrap:wrap}.device-filter-heading>div{width:calc(100% - 52px);flex:none}.device-filter-heading button{width:100%}.device-filter-grid{grid-template-columns:1fr}.device-filter-search{grid-column:auto}.devices-toolbar{align-items:flex-start;flex-direction:column}.devices-toolbar label,.devices-toolbar select{width:100%}.device-info-grid{grid-template-columns:1fr}.modal.modal-device-messages{width:calc(100vw - 18px);max-height:96vh;overflow-y:auto}.device-message-row{grid-template-columns:28px 1fr}.device-message-active{grid-column:2}.device-message-actions{grid-column:2;justify-content:flex-end}.device-message-composer{flex-direction:column}.device-message-composer button{justify-content:center}}@media(max-width:440px){.device-stats{grid-template-columns:1fr}.device-stats article{min-height:66px}}.qr-terminal-shell{margin-top:18px;border:1px solid #e1e7f1;border-radius:18px;background:#fff;box-shadow:0 10px 30px #18274a0f;overflow:hidden}.qr-terminal-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;background:linear-gradient(110deg,#f8faff,#eef3ff)}.qr-terminal-heading>div{display:flex;align-items:center;gap:13px}.qr-terminal-heading>div>span{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:#dfe8ff;color:#3458bd}.qr-terminal-heading svg,.qr-terminal-actions svg,.android-download-card svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.qr-terminal-heading h3,.android-copy h3{margin:2px 0 3px;color:#1e2c4a;font-size:1rem}.qr-terminal-heading small{color:#77849a;font-size:.69rem}.qr-terminal-heading button{display:flex;align-items:center;gap:7px;margin:0}.qr-terminal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;padding:17px}.qr-terminal-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #e5eaf3;border-radius:14px;background:#fff}.qr-terminal-card-icon{display:grid;width:40px;height:40px;place-items:center;flex:none;border-radius:11px;background:#edf2ff;color:#4263c3}.qr-terminal-card-copy{min-width:0;flex:1}.qr-terminal-card-copy strong,.qr-terminal-card-copy small{display:block}.qr-terminal-card-copy strong{color:#24324d;font-size:.8rem}.qr-terminal-card-copy small{margin-top:3px;color:#8490a2;font-size:.63rem}.qr-terminal-actions{display:flex;gap:5px}.qr-terminal-actions button{display:grid;width:32px;height:32px;place-items:center;margin:0;padding:0;border:1px solid #dae1ed;background:#fff;color:#596983}.qr-terminal-actions button:hover{background:#eef3ff;color:#3659b9}.qr-terminal-actions button.is-danger:hover{background:#fff0ef;color:#b93d36}.qr-terminal-actions svg{width:15px;height:15px}.qr-terminal-empty{display:flex;align-items:center;gap:14px;grid-column:1/-1;padding:20px;color:#758298}.qr-terminal-empty>span{display:grid;width:50px;height:50px;place-items:center;border-radius:15px;background:#edf2ff;color:#4665bd}.qr-terminal-empty svg{width:26px}.qr-terminal-empty strong{color:#34435e;font-size:.8rem}.qr-terminal-empty p{margin:4px 0 0;font-size:.68rem}.android-download-card{position:relative;display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:24px;margin-top:18px;padding:24px 28px;overflow:hidden;border-radius:19px;background:linear-gradient(120deg,#172442,#29458e 65%,#4968d1);color:#fff;box-shadow:0 15px 38px #1d2f642b}.android-visual{position:relative;display:grid;height:115px;place-items:center}.android-phone{display:grid;width:68px;height:108px;place-items:center;border:5px solid rgba(255,255,255,.88);border-radius:18px;background:#ffffff1a;color:#fff;box-shadow:0 12px 25px #0003}.android-visual i{position:absolute;width:95px;height:95px;border:1px solid rgba(255,255,255,.16);border-radius:50%;animation:qrPulse 2.4s ease-out infinite}.android-visual i:last-child{animation-delay:1.2s}.android-copy .devices-eyebrow{color:#aebfff}.android-copy h3{color:#fff;font-size:1.12rem}.android-copy>p:not(.devices-eyebrow){max-width:660px;margin:6px 0 13px;color:#ffffffbf;font-size:.72rem;line-height:1.55}.android-steps{display:flex;flex-wrap:wrap;gap:8px}.android-steps span{display:flex;align-items:center;gap:6px;color:#ffffffd1;font-size:.62rem}.android-steps b{display:grid;width:19px;height:19px;place-items:center;border-radius:50%;background:#ffffff24;color:#fff}.android-download-button{display:flex;align-items:center;gap:10px;min-width:225px;padding:13px 16px;border-radius:12px;background:#fff;color:#294cae;text-decoration:none;font-size:.74rem;font-weight:700}.android-download-button span,.android-download-button small{display:block}.android-download-button small{margin-top:2px;color:#77849a;font-size:.58rem;font-weight:500}.qr-poster{padding:28px;text-align:center}.qr-poster>p{margin:0;color:#4564bd;font-size:.65rem;font-weight:800;letter-spacing:.16em}.qr-poster h2{margin:8px 0 2px;color:#172442;font-size:1.55rem}.qr-poster h3{margin:0 0 18px;color:#63708a;font-size:.9rem;font-weight:500}.qr-image{display:grid;place-items:center;margin:auto;padding:14px;width:min(300px,100%);border:1px solid #e0e6ef;border-radius:16px}.qr-image svg{width:100%;height:auto}.qr-poster>strong,.qr-poster>small{display:block}.qr-poster>strong{margin-top:15px;color:#172442;font-size:1.15rem}.qr-poster>small{max-width:370px;margin:5px auto;color:#77849a;font-size:.68rem;line-height:1.45}@keyframes qrPulse{0%{transform:scale(.55);opacity:.65}to{transform:scale(1.45);opacity:0}}@media(max-width:850px){.android-download-card{grid-template-columns:90px 1fr}.android-download-button{grid-column:1/-1;justify-content:center}.qr-terminal-heading{align-items:flex-start;flex-direction:column}.qr-terminal-heading button{width:100%;justify-content:center}}@media(max-width:560px){.android-download-card{grid-template-columns:1fr;text-align:center}.android-visual{display:none}.android-steps{justify-content:center}.qr-terminal-card{align-items:flex-start;flex-wrap:wrap}.qr-terminal-actions{width:100%;justify-content:flex-end}}@media print{body>*:not(.qr-poster){display:none!important}.qr-poster{display:block!important;width:210mm;min-height:297mm;padding:35mm 25mm}.qr-poster .qr-image{width:110mm}}.android-email-link{width:auto;margin:13px 0 0;padding:8px 12px;border:1px solid rgba(255,255,255,.25);border-radius:9px;background:#ffffff17;box-shadow:none;color:#fff;font-size:.64rem;font-weight:650}.android-email-link:hover{background:#ffffff2b}.android-device-card{display:grid;grid-template-columns:150px minmax(300px,1fr) minmax(280px,.65fr);align-items:center;gap:25px;margin-top:18px;padding:26px;border:1px solid #dae3f2;border-radius:19px;background:linear-gradient(125deg,#fff,#f4f7ff);box-shadow:0 12px 34px #18274a12}.android-device-art{position:relative;display:grid;height:130px;place-items:center;border-radius:24px;background:linear-gradient(145deg,#172442,#4968d1);color:#fff}.android-device-art>span svg{width:65px;height:65px;fill:none;stroke:currentColor;stroke-width:1.2}.android-device-art i{position:absolute;right:13px;top:13px;display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#36c58d;box-shadow:0 0 0 7px #36c58d29}.android-device-art i svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2}.android-device-card h3{margin:2px 0 7px;color:#1d2c4a;font-size:1.05rem}.android-device-card>div:nth-child(2)>p:not(.devices-eyebrow){margin:0;color:#6f7c91;font-size:.7rem;line-height:1.55}.android-device-card ul{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px;margin:13px 0 0;padding:0;list-style:none}.android-device-card li{position:relative;padding-left:15px;color:#4f5e77;font-size:.63rem}.android-device-card li:before{position:absolute;left:0;content:"✓";color:#24976c;font-weight:800}.android-device-install{padding:16px;border:1px solid #e0e6f0;border-radius:14px;background:#fff}.android-device-install button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin:0}.android-device-install button svg{width:19px;fill:none;stroke:currentColor;stroke-width:2}.android-device-install button span,.android-device-install button small{display:block}.android-device-install button small{opacity:.72;font-size:.55rem}.android-device-install ol{margin:12px 0 0;padding-left:18px;color:#748096;font-size:.59rem;line-height:1.6}@media(max-width:950px){.android-device-card{grid-template-columns:110px 1fr}.android-device-install{grid-column:1/-1}}@media(max-width:600px){.android-device-card{grid-template-columns:1fr}.android-device-art{height:105px}.android-device-card ul{grid-template-columns:1fr}}@media(max-width:680px){.location-picker{padding:12px}.location-picker-heading{flex-direction:column}.location-type-switch{width:100%}.location-type-switch button{flex:1}.location-search{grid-template-columns:1fr}.location-map{height:315px}.location-map-footer{align-items:flex-start;flex-direction:column}.location-area-actions{justify-content:flex-start}}.purchase-screen{--sales-ink:#142b2e;--sales-deep:#102326;--sales-cream:#f4efe4;--sales-paper:#fffdf8;--sales-sand:#dcc48f;--sales-sage:#839b76;--sales-muted:#687577;position:relative;background-color:#122427;color:var(--sales-ink);scroll-behavior:smooth}.purchase-screen:before{z-index:0;background:radial-gradient(circle at 78% 13%,rgba(220,196,143,.18),transparent 27%),linear-gradient(104deg,#071417ed,#0c1f21d1 45%,#081518e8)}.purchase-screen:after{position:fixed;z-index:0;top:0;right:0;bottom:0;left:0;content:"";pointer-events:none;opacity:.2;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 1px,transparent 4px);mix-blend-mode:soft-light}.purchase-shell{position:relative;z-index:1}.purchase-nav{max-width:1320px;padding:28px 34px 12px}.purchase-brand{display:inline-flex;align-items:center}.purchase-brand img{width:196px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.34))}.purchase-login-link{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 19px;border-color:#ffffff59;background:#0d22244d;color:#fff;font-size:.82rem;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:border-color .18s,background .18s,transform .18s}.purchase-login-link:hover{border-color:#ffffff9e;background:#ffffff1f;transform:translateY(-1px)}.purchase-content{max-width:1320px;overflow:visible;flex:none;padding:0 34px 90px;background:transparent}.purchase-hero{display:grid;max-width:none;min-height:670px;grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);align-items:center;gap:62px;padding:45px 0 88px;color:#fff}.purchase-hero-copy{position:relative;z-index:3;max-width:720px}.purchase-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 17px;color:#ded1aa;font-size:.75rem;letter-spacing:.18em}.purchase-eyebrow i{width:7px;height:7px;border-radius:50%;background:#9bb98b;box-shadow:0 0 0 6px #9bb98b21}.purchase-hero h1{max-width:770px;font-size:clamp(3.8rem,6vw,6.55rem);line-height:.91;letter-spacing:-.064em;text-shadow:0 7px 26px rgba(0,0,0,.22)}.purchase-hero h1 em{color:#e6c98e;font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.047em}.purchase-hero-copy>p:not(.purchase-eyebrow){max-width:610px;margin:29px 0 31px;color:#ffffffd1;font-size:1.05rem;line-height:1.7}.purchase-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.purchase-primary,.purchase-secondary{display:inline-flex;min-height:50px;align-items:center;justify-content:center;border-radius:12px;font-size:.83rem;font-weight:750;text-decoration:none;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s}.purchase-primary{gap:24px;padding:0 20px;background:var(--sales-sand);color:#183033;box-shadow:0 15px 34px #0000003d}.purchase-primary span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:#142b2e1f;font-size:.8rem}.purchase-primary:hover{background:#ead5a3;transform:translateY(-2px);box-shadow:0 18px 38px #00000047}.purchase-secondary{padding:0 20px;border:1px solid rgba(255,255,255,.34);background:#ffffff12;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.purchase-secondary:hover{border-color:#ffffffa6;background:#ffffff21;transform:translateY(-2px)}.purchase-trust{display:flex;gap:21px;margin-top:27px;color:#ffffffb8;font-size:.74rem}.purchase-trust span:first-letter{color:#b9cfaa}.purchase-product{position:relative;z-index:1;min-height:540px;isolation:isolate}.purchase-product:before{position:absolute;z-index:-2;width:470px;height:470px;left:50%;top:48%;border:1px solid rgba(255,255,255,.13);border-radius:50%;background:radial-gradient(circle,rgba(225,202,151,.23) 0,rgba(138,164,125,.09) 44%,transparent 69%);content:"";transform:translate(-50%,-50%)}.purchase-product:after{position:absolute;z-index:-1;width:355px;height:355px;left:50%;top:48%;border:1px dashed rgba(255,255,255,.16);border-radius:50%;content:"";transform:translate(-50%,-50%)}.purchase-device{position:absolute;width:min(390px,82%);left:50%;top:50%;padding:11px;border:1px solid rgba(255,255,255,.24);border-radius:30px;background:linear-gradient(145deg,#263e40,#0c1d20 72%);box-shadow:0 44px 75px #0000006b,inset 0 1px #ffffff2e;transform:translate(-50%,-51%) rotate(-2deg)}.purchase-device:before{position:absolute;left:50%;top:8px;width:46px;height:5px;border-radius:8px;background:#070f11;content:"";transform:translate(-50%)}.purchase-device-top{display:flex;align-items:center;justify-content:space-between;padding:20px 18px 14px;color:#ffffffbf;font-size:.68rem;letter-spacing:.03em}.purchase-device-top i{color:#d8c593;font-family:Georgia,serif;font-size:1.02rem;font-style:normal}.purchase-device-screen{min-height:326px;padding:31px 28px 25px;border-radius:21px;background:linear-gradient(158deg,#fffdf7,#e9eadf);box-shadow:inset 0 0 0 1px #1023261a;color:#173033;text-align:center}.purchase-device-screen>small{display:block;color:#6e8168;font-size:.61rem;font-weight:800;letter-spacing:.18em}.purchase-device-screen>strong{display:block;margin:7px 0 25px;font-family:Georgia,serif;font-size:2.1rem;font-weight:500;letter-spacing:-.04em}.purchase-device-action{display:flex;align-items:center;gap:14px;padding:17px;border:1px solid #cad4bf;border-radius:15px;background:#f7f7ef;color:#263d37;text-align:left;box-shadow:0 10px 25px #20332a14}.purchase-device-action>span{display:grid;width:48px;height:48px;place-items:center;flex:0 0 48px;border-radius:14px;background:linear-gradient(145deg,#76946d,#496c58);color:#fff;font-size:1.4rem;box-shadow:0 7px 15px #3c5c4538}.purchase-device-action b,.purchase-device-action small{display:block}.purchase-device-action b{font-size:.82rem}.purchase-device-action small{margin-top:4px;color:#7b8581;font-size:.62rem;line-height:1.35}.purchase-device-screen>p{margin:25px 0 0;color:#6e7975;font-family:Georgia,serif;font-size:.88rem;font-style:italic}.purchase-device-base{width:41%;height:12px;margin:13px auto 1px;border-radius:50%;background:#081416;box-shadow:0 8px 16px #00000073}.purchase-float-card,.purchase-scan-pill{position:absolute;z-index:4;border:1px solid rgba(255,255,255,.55);background:#fffdf7f2;color:#183033;box-shadow:0 20px 40px #00000040;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.purchase-float-card{display:flex;align-items:center;gap:11px;min-width:174px;padding:13px 15px;border-radius:15px}.purchase-float-card small,.purchase-float-card strong{display:block}.purchase-float-card small{color:#77837f;font-size:.55rem;font-weight:800;letter-spacing:.1em}.purchase-float-card strong{margin-top:4px;font-size:.78rem}.float-icon{display:grid;width:35px;height:35px;place-items:center;border-radius:11px;background:#dfeada;color:#41694d;font-size:.9rem;font-weight:800}.float-presence{left:-3px;top:103px;transform:rotate(1deg)}.float-report{right:-7px;bottom:108px;min-width:194px;justify-content:space-between;transform:rotate(1.5deg)}.float-report svg{width:72px;height:29px;overflow:visible}.float-report path{fill:none;stroke:#6f8d68;stroke-width:3;stroke-linecap:round}.purchase-scan-pill{left:50%;bottom:17px;padding:9px 14px;border-radius:999px;font-size:.63rem;font-weight:750;letter-spacing:.06em;transform:translate(-50%);white-space:nowrap}.purchase-scan-pill span{color:#668460;font-size:.8rem}.purchase-benefits-wrap{padding:47px;border:1px solid rgba(255,255,255,.56);border-radius:27px;background:linear-gradient(145deg,#fffdf7f7,#edecdef2);box-shadow:0 27px 70px #00000040;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.purchase-benefits-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:27px}.purchase-benefits-heading p{max-width:205px;margin:0;color:#708065;font-size:.67rem;font-weight:800;letter-spacing:.15em;line-height:1.5}.purchase-benefits-heading h2{max-width:600px;margin:0;color:#193135;font-size:clamp(2rem,3.2vw,3.15rem);line-height:1.03;letter-spacing:-.04em;text-align:right}.purchase-benefits{gap:13px;overflow:visible;border:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.purchase-benefits article{position:relative;min-height:215px;padding:26px 25px;border:1px solid #dfe2d8;border-radius:17px;background:#ffffffbf;transition:border-color .18s,transform .18s,box-shadow .18s}.purchase-benefits article:hover{border-color:#b7c3ac;box-shadow:0 14px 28px #2d3f3114;transform:translateY(-3px)}.purchase-benefits b{position:absolute;right:22px;top:21px;color:#a18f68;font-size:.72rem}.benefit-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:#e5ebdf;color:#506d50;font-size:1.1rem}.purchase-benefits h3{margin:28px 0 9px;color:#203537;font-size:1.02rem}.purchase-benefits p{color:#687477;font-size:.79rem;line-height:1.65}.purchase-pricing{margin-top:25px;padding:58px 48px 49px;border-radius:27px;background:#faf8f1fa;box-shadow:0 27px 70px #0000003d;scroll-margin-top:20px}.purchase-section-title>p{margin-bottom:13px;color:#6d805f;font-size:.69rem;letter-spacing:.16em}.purchase-section-title h2{font-size:clamp(2.15rem,3.6vw,3.35rem);line-height:1;letter-spacing:-.045em}.purchase-section-title>span{margin-top:13px;color:#707c82;font-size:.78rem}.purchase-grid{gap:18px;margin-top:38px}.purchase-plan{display:flex;min-height:435px;flex-direction:column;padding:29px 27px 27px;border-color:#d9dfdc;border-radius:19px;background:#fff;box-shadow:0 7px 20px #1d31300a}.purchase-plan:hover{border-color:#9cae92;box-shadow:0 20px 38px #1f342d1f}.purchase-plan.is-selected{border-color:#718969;box-shadow:0 0 0 3px #71896924,0 18px 34px #1f342d1a}.purchase-plan.featured{border-color:#304f4c;background:linear-gradient(155deg,#1b3436,#263f3e 62%,#3a514a);box-shadow:0 19px 38px #142c2c3b}.plan-tag{width:max-content;padding:6px 10px;background:#edf1e9;color:#55714f;font-size:.61rem;letter-spacing:.05em}.featured .plan-tag{background:#e6cf98;color:#263b36}.purchase-plan h3{margin:21px 0 7px;color:#203436;font-size:1.25rem}.featured h3{color:#fff}.plan-price b{color:#1c3335;font-size:2.75rem}.featured .plan-price b{color:#fff}.plan-price small{font-size:.77rem}.purchase-plan>p{min-height:40px;margin:7px 0 21px;font-size:.74rem;line-height:1.45}.purchase-plan ul{gap:11px;margin-bottom:27px}.purchase-plan li{padding-left:21px;color:#536166;font-size:.77rem;line-height:1.35}.purchase-plan li:before{color:#6b8b62}.purchase-plan.featured li{color:#ffffffd1}.purchase-plan.featured li:before{color:#e6cf98}.choose-plan{min-height:46px;margin-top:auto;border-radius:11px;font-size:.76rem;transition:background .18s,transform .18s}.choose-plan:hover{transform:translateY(-1px)}.featured .choose-plan{background:#e6cf98;color:#263b36}.purchase-order{position:relative;overflow:hidden;grid-template-columns:.78fr 1.22fr;gap:50px;margin-top:25px;padding:52px 48px;border-radius:27px;background:linear-gradient(130deg,#142d2ffa,#233e3bfa);box-shadow:0 27px 70px #00000045;color:#fff}.purchase-order:before{position:absolute;right:-125px;top:-185px;width:400px;height:400px;border:45px solid rgba(230,207,152,.07);border-radius:50%;content:""}.purchase-order>div{position:relative;z-index:1;padding-top:13px}.purchase-order .purchase-eyebrow{color:#dbc99e}.purchase-order h2{margin:0 0 15px;color:#fff;font-size:clamp(2.25rem,3.7vw,3.5rem);line-height:1.02;letter-spacing:-.045em}.purchase-order>div>p:last-child{max-width:390px;color:#ffffffb3;font-size:.84rem;line-height:1.7}.purchase-order form{position:relative;z-index:1;padding:26px;border:1px solid rgba(255,255,255,.64);border-radius:18px;background:#fffdf8fa;box-shadow:0 20px 45px #00000036}.purchase-form-grid{gap:15px}.purchase-form-grid label{color:#3e5052;font-size:.73rem}.purchase-form-grid input,.purchase-form-grid select{height:46px;margin-top:7px;border-color:#cfd7d3;border-radius:9px;font-size:.8rem}.purchase-form-grid input:focus,.purchase-form-grid select:focus{outline:0;border-color:#789276;box-shadow:0 0 0 3px #78927629}.purchase-total{margin:20px 0;padding:17px 18px;border:1px solid #dce5d6;border-radius:12px;background:linear-gradient(135deg,#eef3e9,#e5edde)}.purchase-total span{color:#4d6250;font-size:.75rem}.purchase-total small{font-size:.61rem}.purchase-total strong{color:#26432f;font-size:1.27rem}.purchase-submit{min-height:50px;padding:0 18px;border-radius:11px;background:#284b43;color:#fff;font-size:.79rem;box-shadow:0 10px 22px #1e43382e;transition:background .18s,transform .18s}.purchase-submit:hover{background:#1f4039;transform:translateY(-1px)}.purchase-terms{margin-top:12px;color:#7b8788;font-size:.62rem;line-height:1.55}.purchase-footer{max-width:1320px;padding:24px 34px 40px;color:#ffffffa3;font-size:.72rem}.purchase-footer a{color:#e2cf9f}.purchase-screen a:focus-visible,.purchase-screen button:focus-visible,.purchase-screen input:focus-visible,.purchase-screen select:focus-visible{outline:3px solid rgba(230,207,152,.74);outline-offset:3px}@media(max-width:1080px){.purchase-hero{grid-template-columns:minmax(0,1fr) minmax(390px,.82fr);gap:28px}.purchase-product{min-height:500px}.float-presence{left:0}.float-report{right:0}.purchase-plan{padding:25px 22px}}@media(max-width:900px){.purchase-hero{min-height:0;grid-template-columns:1fr;padding:62px 0 78px}.purchase-hero-copy{max-width:750px}.purchase-product{width:min(620px,100%);min-height:530px;margin:5px auto 0}.purchase-benefits-heading{align-items:flex-start;flex-direction:column;gap:11px}.purchase-benefits-heading h2{text-align:left}.purchase-benefits,.purchase-grid{grid-template-columns:1fr}.purchase-benefits article{min-height:0}.purchase-plan{min-height:0}.purchase-order{grid-template-columns:1fr;gap:25px}}@media(max-width:620px){.purchase-nav{padding:20px 18px 8px}.purchase-content{padding:0 18px 55px}.purchase-brand img{width:150px}.purchase-login-link{min-height:40px;padding:0 13px;font-size:.72rem}.purchase-hero{padding:45px 0 55px}.purchase-hero h1{font-size:clamp(3.05rem,15vw,4.45rem)}.purchase-hero-copy>p:not(.purchase-eyebrow){font-size:.93rem}.purchase-hero-actions{align-items:stretch;flex-direction:column}.purchase-primary,.purchase-secondary{width:100%}.purchase-trust{align-items:flex-start;flex-direction:column;gap:8px}.purchase-product{min-height:455px}.purchase-product:before{width:390px;height:390px}.purchase-product:after{width:290px;height:290px}.purchase-device{width:min(330px,91%)}.purchase-device-screen{min-height:280px;padding:26px 19px 21px}.purchase-device-screen>strong{font-size:1.75rem}.purchase-device-action{padding:13px}.float-presence{left:-5px;top:74px}.float-report{right:-5px;bottom:68px;min-width:167px}.float-report svg{display:none}.purchase-scan-pill{bottom:5px}.purchase-benefits-wrap,.purchase-pricing,.purchase-order{padding:29px 20px;border-radius:21px}.purchase-benefits-wrap{padding-top:34px}.purchase-benefits-heading h2,.purchase-section-title h2{font-size:2.05rem}.purchase-benefits article{padding:23px 21px}.purchase-plan{padding:25px 22px}.purchase-order h2{font-size:2.25rem}.purchase-order form{padding:20px 17px}.purchase-form-grid{grid-template-columns:1fr}.purchase-total{align-items:flex-start;flex-direction:column;gap:8px}.purchase-footer{padding:20px 18px 30px}}.mobile-appbar,.mobile-nav-close,.sidebar-scrim{display:none}.responsive-table{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.responsive-table:focus-visible{outline:3px solid rgba(41,98,255,.35);outline-offset:2px}@media(max-width:1100px)and (min-width:961px){.sidebar{width:220px}main{min-width:0;padding:22px 20px 42px}.page-header{padding:24px}}@media(max-width:960px){html,body{width:100%;max-width:100%;overflow:hidden}body.modal-open{overflow:hidden}#app{display:block;width:100%;height:100vh;height:100dvh;min-width:0;padding-top:64px;overflow:hidden;background:var(--bg)}.mobile-appbar{position:fixed;z-index:280;inset:0 0 auto;display:grid;height:64px;grid-template-columns:46px auto minmax(0,1fr);align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid #dce3ef;background:#fffffff5;box-shadow:0 6px 22px #18244217;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-appbar img{width:122px;max-height:44px;object-fit:contain}#mobile-page-title{min-width:0;overflow:hidden;color:#253451;font-size:.88rem;font-weight:650;text-align:right;text-overflow:ellipsis;white-space:nowrap}.mobile-nav-toggle,.mobile-nav-close{display:grid;width:44px;height:44px;min-height:44px;padding:0;place-items:center;border:1px solid #d9e1ef;border-radius:12px;background:#f7f9fd;color:#2d4f9e;box-shadow:none}.mobile-nav-toggle:hover,.mobile-nav-close:hover{background:#edf2ff;color:#2449a7}.mobile-nav-toggle svg,.mobile-nav-close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.sidebar-scrim{position:fixed;z-index:300;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#0a13267a;opacity:0;pointer-events:none;transition:opacity .2s ease}.sidebar{position:fixed;z-index:310;inset:0 auto 0 0;display:flex;width:min(84vw,320px);height:100vh;height:100dvh;flex-direction:column;align-items:stretch;overflow:hidden;border:0;border-right:1px solid #dce3ef;box-shadow:18px 0 55px #0f1c3838;transform:translate(-104%);transition:transform .22s ease}#app.mobile-nav-open .sidebar{transform:translate(0)}#app.mobile-nav-open .sidebar-scrim{display:block;opacity:1;pointer-events:auto}.brand{display:flex;min-height:72px;align-items:center;justify-content:space-between;padding:10px 12px 9px 17px;border-bottom:1px solid #e5eaf2}.brand img{width:145px}.sidebar-tenant-wrapper{display:block;padding:12px;border-bottom:1px solid var(--border)}.sidebar-tenant-menu{position:fixed;top:138px;left:12px;width:calc(min(84vw,320px) - 24px);max-width:none}.sidebar nav{display:flex;width:auto;min-height:0;flex:1;flex-direction:column;padding:9px 10px 18px;overflow-x:hidden;overflow-y:auto}.sidebar nav .nav-section{display:flex;flex-direction:column;margin-bottom:9px}.sidebar nav .nav-label{display:block}.sidebar nav a{min-height:44px;white-space:normal;border:0;border-radius:9px}.sidebar nav a.active{border:0;box-shadow:inset 3px 0 var(--primary)}.sidebar-footer{display:flex;padding:12px 16px;flex-direction:column}main{width:100%;height:calc(100vh - 64px);height:calc(100dvh - 64px);min-width:0;padding:18px 16px 42px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.page-header{min-height:0;margin-bottom:15px;padding:22px;align-items:flex-start;border-radius:16px}.page-header:after{right:-52px;top:-108px}.page-header>div,.page-header>section{min-width:0}.page-header h2{overflow-wrap:anywhere;font-size:clamp(1.65rem,7vw,2.25rem);line-height:1.08}.page-header p{font-size:.84rem;line-height:1.5}.page-header>button,.page-header>div+button{width:100%;min-height:44px}.toolbar{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;padding:12px}.toolbar label{align-items:stretch;flex-direction:column;gap:5px}.toolbar label>input:not([type=checkbox]):not([type=radio]),.toolbar label>select,.toolbar label>textarea,.toolbar>input:not([type=checkbox]):not([type=radio]),.toolbar>select{width:100%;min-width:0;margin:0}.toolbar>button{width:100%}.responsive-table{margin-bottom:2px}.responsive-table>table{min-width:680px}.responsive-table:after{display:block;width:max-content;padding:7px 10px 2px;color:#77839a;font-size:.68rem;content:"Vieritä taulukkoa sivusuunnassa nähdäksesi kaikki tiedot"}button:not(.link),input:not([type=checkbox]):not([type=radio]),select{min-height:44px}input[type=text],input[type=email],input[type=password],input[type=date],input[type=datetime-local],input[type=time],input[type=number],select,textarea{font-size:16px}#toast-container{right:12px;bottom:12px;left:12px}.toast{width:100%;max-width:none}}@media(max-width:720px){.modal-backdrop{align-items:flex-start;padding:8px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.modal{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);margin:auto 0;padding:18px 16px;border-radius:14px;overflow-y:auto}.modal h3{font-size:1.08rem}.modal-actions{position:sticky;z-index:5;bottom:0;margin:16px -16px -18px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -8px 24px #19274817}.modal-actions button{min-height:44px}.modal.modal-company,.modal.modal-site,.modal.modal-group,.modal.modal-worksite-editor,.modal.modal-employee-tool,.modal.modal-employee-pin,.modal.modal-stamps-range{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.modal-company>.modal-form,.modal-site>.modal-form,.modal-group>.modal-form{min-height:0;overflow-y:auto}.company-form-tabs,.site-form-tabs,.employee-form-tabs{scrollbar-width:thin}}@media(max-width:520px){.mobile-appbar{grid-template-columns:44px minmax(0,1fr);padding-inline:10px}.mobile-appbar img{width:132px;justify-self:center}#mobile-page-title{display:none}main{padding:12px 10px 34px}.page-header{padding:19px 17px;border-radius:14px}.page-header h2{font-size:1.62rem}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.empty{padding:28px 18px}}.employee-list-responsive{container-name:employee-list;container-type:inline-size}.employee-list-responsive:after{display:none}.employee-list-identity{display:contents}.employee-list-meta,.employee-summary-pin,.employee-summary-status,.employee-expand-button{display:none}.employee-search-toolbar{flex-wrap:nowrap;gap:14px;padding:10px 12px}.employee-search-box{position:relative;display:flex;min-width:0;flex:1;align-items:center;margin:0}.employee-search-box>svg{position:absolute;z-index:1;left:15px;width:19px;height:19px;fill:none;stroke:#6e7b91;stroke-linecap:round;stroke-width:1.8;pointer-events:none}.employee-search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.employee-search-box>input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-width:0;min-height:48px;margin:0;padding:11px 46px 11px 45px;border:1px solid #dfe5ef;border-radius:12px;background:#f8faff;color:#172442;font:inherit}.employee-search-box>input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.employee-search-box>input[type=search]::placeholder{color:#8490a3}.employee-search-box>input[type=search]:focus{border-color:#7590ef;outline:3px solid rgba(78,105,241,.14);outline-offset:0;background:#fff}.employee-search-clear{position:absolute;z-index:2;right:7px;display:grid;width:34px;height:34px;min-height:34px;place-items:center;padding:0;border-radius:9px;background:transparent;color:#68758b;font-size:1.35rem;line-height:1}.employee-search-clear:hover{background:#e9eef8;color:#243b74;transform:none}.employee-search-clear[hidden],.employee-search-empty[hidden]{display:none!important}.employee-search-count{min-width:110px;color:#66738a;font-size:.82rem;font-weight:650;text-align:right;white-space:nowrap}.employee-search-empty{margin-top:12px}.employee-list-table tr[hidden]{display:none!important}@container employee-list (max-width:1050px){.employee-list-responsive{overflow:hidden;border:1px solid #dfe6f2;border-radius:16px;background:#fff;box-shadow:0 8px 24px #1824420f}.employee-list-responsive>.employee-list-table{display:block;min-width:0;border:0;border-radius:0;background:transparent;box-shadow:none}.employee-list-table thead{display:none}.employee-list-table tbody{display:block}.employee-list-table tr[data-id]{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;border:0;border-bottom:1px solid #e7ebf2;border-radius:0;background:#fff;box-shadow:none;transition:background-color .16s ease}.employee-list-table tr[data-id]:last-child{border-bottom:0}.employee-list-table tr[data-id]:hover{background:#f8faff;cursor:pointer}.employee-list-table tr[data-id].is-expanded{z-index:1;background:linear-gradient(90deg,#f4f7ff 0,#fbfcff 44%,#fff);box-shadow:inset 4px 0 #536df2,inset 0 0 0 1px #dce4fb,0 8px 22px #2c438414}.employee-list-table td{display:none;min-width:0;flex-direction:column;gap:3px;padding:10px 18px;border:0;color:#273650;overflow-wrap:anywhere}.employee-list-table td:before{color:#7b879c;font-size:.62rem;font-weight:750;letter-spacing:.065em;line-height:1.2;text-transform:uppercase;content:attr(data-label)}.employee-list-table td:first-child{display:flex;flex-direction:row;align-items:center;grid-column:1/-1;min-height:72px;padding:12px 16px;color:#172442}.employee-list-table td:first-child:before{display:none}.employee-list-table tr.is-expanded td:first-child{border-bottom:1px solid #dfe6f7;background:#ecf1ff94}.employee-list-identity{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.employee-list-name{overflow:hidden;color:#172442;font-size:1rem;font-weight:680;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.employee-list-meta{display:block;overflow:hidden;color:#6f7b90;font-size:.79rem;font-weight:450;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.employee-summary-pin{display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;margin-left:16px;color:#7b879c;font-size:.63rem;font-weight:750;letter-spacing:.06em}.employee-summary-pin code{padding:5px 8px;border-radius:7px;background:#f0f3f8;color:#26344e;font-size:.76rem;font-weight:700;letter-spacing:.1em}.employee-summary-status{display:inline-flex;flex:0 0 auto;margin-left:16px}.employee-expand-button{display:inline-grid;width:40px;height:40px;min-height:40px;flex:0 0 40px;place-items:center;margin-left:8px;padding:0;border:1px solid #dfe5ef;border-radius:11px;background:#f8faff;color:#53627b;box-shadow:none}.employee-expand-button:hover{background:#edf2ff;color:#3459d6;transform:none}.employee-expand-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;transition:transform .18s ease}.employee-list-table tr.is-expanded .employee-expand-button svg{transform:rotate(180deg)}.employee-list-table tr.is-expanded td:not(:first-child){display:flex}.employee-list-table td:nth-child(7),.employee-list-table td:nth-child(8){grid-column:1/-1}.employee-list-table td:nth-child(8) .badge{margin:2px 4px 2px 0}.employee-list-table td.actions{grid-column:1/-1;padding:12px 18px;border-top:1px solid #edf0f5;background:#f8faff}.employee-list-table tr.is-expanded td.actions{display:block;background:#f3f6ff;border-top-color:#dfe6f7}.employee-list-table td.actions:before{display:none}.employee-list-table .employee-row-actions{display:grid;grid-template-columns:repeat(auto-fit,44px);justify-content:start;gap:8px}.employee-list-table td.actions .employee-action-button{width:44px;height:44px;min-height:44px;margin:0;border-radius:11px}.employee-list-table td.actions .employee-action-button svg{width:19px;height:19px}}@container employee-list (max-width:540px){.employee-list-table tr[data-id]{grid-template-columns:1fr}.employee-list-table td:nth-child(7),.employee-list-table td:nth-child(8),.employee-list-table td.actions{grid-column:auto}.employee-summary-status{display:none}.employee-list-table .employee-row-actions{grid-template-columns:repeat(4,44px)}}@media(max-width:600px){.employee-search-toolbar{flex-wrap:wrap}.employee-search-box{flex-basis:100%}.employee-search-count{min-width:0;text-align:left}}.group-add-member>div.group-member-picker:last-child{display:flex;flex-direction:column;align-items:stretch;gap:9px;grid-template-columns:none}.group-member-search{position:relative;display:flex;align-items:center}.group-member-search>svg{position:absolute;z-index:1;left:13px;width:18px;height:18px;fill:none;stroke:#6e7b91;stroke-linecap:round;stroke-width:1.8;pointer-events:none}.group-member-search>label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.group-member-search>input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-height:44px;margin:0;padding:9px 42px 9px 40px;border:1px solid #d7deea;border-radius:10px;background:#f8faff;color:#172442;font:inherit}.group-member-search>input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.group-member-search>input[type=search]:focus{border-color:#7590ef;outline:3px solid rgba(78,105,241,.14);background:#fff}.group-member-search-clear{position:absolute;z-index:2;right:6px;display:grid;width:32px;height:32px;min-height:32px;place-items:center;padding:0;border-radius:8px;background:transparent;color:#68758b;font-size:1.25rem;line-height:1}.group-member-search-clear:hover{background:#e9eef8;color:#243b74;transform:none}.group-member-search-clear[hidden],.group-member-candidate-empty[hidden],.group-member-candidate[hidden]{display:none!important}.group-member-search-help{margin:0;color:#7a869b;font-size:.69rem;line-height:1.45}.group-member-candidates{display:flex;max-height:270px;flex-direction:column;gap:6px;overflow-y:auto;overscroll-behavior:contain;padding-right:3px;scrollbar-width:thin}.group-member-candidate{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid #e4e9f1;border-radius:11px;background:#fafbfe}.group-member-candidate-avatar{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:9px;background:#e7edfc;color:#3f5db2;font-size:.72rem;font-weight:750}.group-member-candidate>div{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.group-member-candidate strong{overflow:hidden;color:#263551;font-size:.8rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.group-member-candidate small{overflow:hidden;color:#8490a3;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.member-add-btn{display:inline-flex;min-height:36px;align-items:center;gap:6px;padding:7px 11px;border-radius:9px;background:#edf2ff;color:#3558bd;box-shadow:none;font-size:.74rem;font-weight:650}.member-add-btn:hover{background:#dfe8ff;color:#24469f;transform:none}.member-add-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2}.group-member-candidate-empty,.group-member-all-added{padding:18px;border:1px dashed #d7dfec;border-radius:11px;background:#fafbfe;color:#748097;font-size:.76rem;text-align:center}@media(max-width:520px){.group-member-candidate{align-items:flex-start;flex-wrap:wrap}.group-member-candidate>div{padding-top:2px}.member-add-btn{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.sidebar,.sidebar-scrim{transition:none}}.device-network-status{margin:16px 0;padding:12px 16px;border-radius:12px;background:#ff720014;border:1px solid rgba(255,114,0,.24)}.device-network-status[data-status=applied]{border-color:#538235}.device-network-status[data-status=rolled_back],.device-network-warning{color:#ffb56c}.device-network-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}:root{--control-accent: #ff7200}.modal-device-control{width:min(960px,96vw);max-width:960px}.control-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.control-tabs button{background:transparent;color:inherit;border:1px solid #7775}.control-tabs button[aria-selected=true]{background:var(--control-accent);color:#171717}.control-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.control-metric{padding:1rem;border-radius:12px;border:1px solid #8884;background:#8881;display:grid;gap:.4rem}.control-metric span{font-size:.85rem;opacity:.75}.control-metric strong{font-size:1.25rem}.control-metric meter{width:100%;accent-color:var(--control-accent)}.control-freshness.is-stale,.control-support{color:#db8d30}.control-settings{border:0;padding:0}.control-toggle{display:flex!important;align-items:center;gap:.5rem}.control-toggle input{width:auto}.control-actions{display:flex;flex-wrap:wrap;gap:.75rem}.control-audit{overflow-x:auto}.control-audit small{display:block;opacity:.75}.control-device-selection{max-height:240px;overflow:auto}.modal-device-control [data-panel]>label{display:grid;gap:.3rem;margin:.75rem 0}@media(max-width:600px){.control-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.control-metric{padding:.75rem}.control-metric strong{font-size:1rem}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
