:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1b2430;background:#f4f6f8;font-synthesis:none;--bg: #f4f6f8;--panel: #ffffff;--panel-soft: #f8fafb;--text: #1b2430;--muted: #687486;--border: #dfe5eb;--accent: #1f6feb;--accent-strong: #1558bf;--danger: #b42318;--danger-soft: #fff1f0;--good: #067647;--good-soft: #ecfdf3;--warn: #b54708;--warn-soft: #fffaeb;--info: #175cd3;--info-soft: #eff8ff;--shadow: 0 8px 26px rgba(16, 24, 40, .06)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.35rem,2vw,1.8rem);margin-bottom:4px;letter-spacing:-.025em}h2{font-size:1.15rem}h3{font-size:1rem;margin-bottom:7px}p{color:var(--muted);line-height:1.5}small{color:var(--muted)}.btn{min-height:38px;border:1px solid transparent;border-radius:9px;padding:8px 13px;font-weight:650;transition:background .15s ease,border .15s ease,transform .05s ease}.btn:active:not(:disabled){transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-strong)}.btn-secondary{background:#fff;border-color:var(--border);color:var(--text)}.btn-secondary:hover:not(:disabled),.btn-ghost:hover:not(:disabled){background:#f1f4f7}.btn-danger{background:var(--danger-soft);border-color:#f8c7c3;color:var(--danger)}.btn-ghost{background:transparent;color:#344054}.icon-btn{border:0;background:transparent;font-size:1.65rem;line-height:1;color:var(--muted);border-radius:8px;width:38px;height:38px}.icon-btn:hover{background:var(--panel-soft)}.app-shell{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:18px 14px;background:#101828;color:#fff;display:flex;flex-direction:column;z-index:30}.brand,.login-logo{display:flex;align-items:center;gap:10px}.brand{padding:4px 6px 22px}.brand strong,.login-logo strong{display:block;font-size:.94rem}.brand small,.login-logo small{display:block;margin-top:2px;color:#98a2b3;font-size:.74rem}.brand-mark{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(145deg,#3785ff,#165dce);color:#fff;font-weight:800;letter-spacing:-.04em;box-shadow:0 4px 12px #1f6feb40;flex:0 0 auto}.nav-list{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:4px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#667085 transparent;padding-right:3px}.nav-list::-webkit-scrollbar{width:6px;height:6px}.nav-list::-webkit-scrollbar-track{background:transparent}.nav-list::-webkit-scrollbar-thumb{background:#667085;border-radius:999px}.nav-list::-webkit-scrollbar-thumb:hover{background:#98a2b3}.nav-item{width:100%;display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:#d0d5dd;text-align:left;font-weight:600}.nav-item:hover{background:#1d2939;color:#fff}.nav-item.active{background:#344054;color:#fff}.nav-icon{width:22px;flex:0 0 22px;text-align:center;font-size:1.1rem}.nav-label{min-width:0;line-height:1.2;white-space:normal;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word;word-break:normal}.sidebar-user{margin-top:auto;padding:13px 6px 2px;border-top:1px solid #344054;display:flex;align-items:center;gap:9px}.sidebar-user-text{min-width:0}.sidebar-user-text strong{display:block;max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.83rem}.sidebar-user-text button{border:0;background:transparent;padding:2px 0;color:#98a2b3;font-size:.76rem}.avatar{width:34px;height:34px;border-radius:50%;background:#eaf2ff;color:#175cd3;display:grid;place-items:center;font-weight:750;flex:0 0 auto}.avatar.small{width:31px;height:31px}.main{min-width:0}.topbar{min-height:76px;padding:16px 28px;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;z-index:20}.topbar p{margin:0;font-size:.82rem}.top-actions{display:flex;gap:8px}.content{max-width:1440px;padding:22px 28px 40px;margin:0 auto}.card,.table-card,.role-card{background:var(--panel);border:1px solid var(--border);border-radius:13px;box-shadow:0 1px 2px #10182805}.card{padding:17px}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.stat-label{display:block;color:var(--muted);font-size:.78rem;font-weight:650}.stat-value{display:block;margin:5px 0 2px;font-size:1.65rem;line-height:1;letter-spacing:-.04em}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.settings-grid p{font-size:.87rem;margin-bottom:12px}.badge{display:inline-flex;align-items:center;min-height:23px;padding:3px 8px;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap;background:#f2f4f7;color:#475467}.badge-good{background:var(--good-soft);color:var(--good)}.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-bad{background:var(--danger-soft);color:var(--danger)}.badge-info{background:var(--info-soft);color:var(--info)}.tenant-list{display:flex;flex-direction:column;gap:11px}.tenant-card{padding:15px}.tenant-card-main{display:flex;justify-content:space-between;gap:18px;align-items:center}.tenant-title{display:flex;align-items:center;gap:10px;min-width:0}.tenant-title h3{margin:0 0 2px}.company-avatar{width:38px;height:38px;border-radius:9px;background:#edf4ff;color:#175cd3;display:grid;place-items:center;font-size:.78rem;font-weight:800}.tenant-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.tenant-meta,.detail-grid{margin-top:14px;padding-top:13px;border-top:1px solid #edf0f3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.tenant-meta div,.detail-grid div,.review-grid div{min-width:0}.tenant-meta span,.detail-grid span,.review-grid span{display:block;color:var(--muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.tenant-meta strong,.detail-grid strong,.review-grid strong{display:block;margin:3px 0 2px;font-size:.84rem;overflow-wrap:anywhere}.tenant-meta small,.detail-grid small,.review-grid small{display:block;font-size:.73rem;overflow-wrap:anywhere}.truncate{overflow:hidden!important;text-overflow:ellipsis;white-space:nowrap}.card-actions{margin-top:13px;display:flex;gap:7px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.notice{padding:11px 13px;border-radius:9px;font-size:.82rem;margin-bottom:14px;border:1px solid}.notice-info{background:var(--info-soft);border-color:#b2ddff;color:#1849a9}.notice-warn{background:var(--warn-soft);border-color:#fedf89;color:#93370d}.notice-error,.form-error{background:var(--danger-soft);border:1px solid #fecdca;color:var(--danger)}.form-error{padding:10px 12px;border-radius:8px;font-size:.82rem}.toast{position:fixed;top:14px;right:16px;z-index:100;max-width:min(420px,calc(100vw - 32px));border-radius:9px;padding:10px 13px;box-shadow:var(--shadow);font-size:.82rem;font-weight:650;animation:toast-in .2s ease}.toast-good{background:#065f46;color:#fff}.toast-bad{background:#991b1b;color:#fff}@keyframes toast-in{0%{transform:translateY(-8px);opacity:0}}.section-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.section-toolbar p{margin:0;font-size:.82rem}.table-card{overflow:hidden}.data-table{width:100%}.data-row{display:grid;align-items:center;gap:12px;min-height:53px;padding:8px 13px;border-top:1px solid #edf0f3;font-size:.82rem}.data-row:first-child{border-top:0}.data-head{min-height:39px;color:var(--muted);background:var(--panel-soft);font-size:.72rem;font-weight:700}.users-table .data-row{grid-template-columns:minmax(210px,1.7fr) .6fr .6fr .8fr auto}.identity-cell{display:flex;align-items:center;gap:9px;min-width:0}.identity-cell strong,.identity-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-cell small{font-size:.73rem}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.role-card{padding:15px;min-width:0}.role-card p{font-size:.79rem;min-height:36px;margin-bottom:10px}.role-name{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.role-name h3{margin:0}.role-count{display:flex;align-items:baseline;gap:6px;margin:10px 0}.role-count strong{font-size:1.35rem}.role-count span{font-size:.75rem;color:var(--muted)}.group-stats{display:flex;gap:14px;font-size:.78rem;color:var(--muted);padding:9px 0}.group-stats strong{color:var(--text)}.chip-row{display:flex;gap:5px;flex-wrap:wrap}.chip{border-radius:6px;background:#f2f4f7;color:#475467;padding:4px 6px;font-size:.68rem;overflow-wrap:anywhere}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:18px;background:#1018287a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{width:min(620px,100%);max-height:calc(100vh - 36px);display:flex;flex-direction:column;background:#fff;border-radius:14px;box-shadow:0 28px 70px #10182838;overflow:hidden}.modal-wide{width:min(950px,100%)}.modal-header{min-height:61px;padding:13px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-header h2{margin:0}.modal-body{overflow:auto;padding:17px}.modal-footer{padding:11px 16px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:7px;background:#fafbfc}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field-label{font-size:.76rem;font-weight:700;color:#344054}.field-hint{font-size:.7rem}.field input,.field select,.field textarea,.inline-form input,.permission-row select{width:100%;border:1px solid #cfd6de;border-radius:8px;background:#fff;color:var(--text);min-height:38px;padding:8px 10px;outline:none}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.inline-form input:focus,.permission-row select:focus{border-color:#84adff;box-shadow:0 0 0 3px #e8f0ff}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-span{grid-column:1 / -1}.wizard-steps{display:flex;align-items:flex-start;justify-content:space-between;margin:0 0 22px;gap:4px;position:relative}.wizard-steps:before{content:"";position:absolute;top:14px;left:7%;right:7%;height:1px;background:var(--border);z-index:0}.wizard-step{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--muted);text-align:center}.wizard-step>span{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#fff;border:1px solid var(--border);font-size:.75rem;font-weight:800}.wizard-step.active>span{background:var(--accent);border-color:var(--accent);color:#fff}.wizard-step.done>span{background:var(--good);border-color:var(--good);color:#fff}.wizard-step small{font-size:.67rem;background:#fff;padding:0 4px}.section-intro{font-size:.83rem;margin-bottom:12px}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.module-option{min-height:62px;border:1px solid var(--border);border-radius:9px;display:flex;gap:9px;align-items:flex-start;padding:10px;cursor:pointer;background:#fff}.module-option.selected{border-color:#84adff;background:#f5f8ff}.module-option input{margin-top:2px;accent-color:var(--accent)}.module-option strong,.module-option small{display:block}.module-option strong{font-size:.8rem}.module-option small{margin-top:2px;font-size:.67rem}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.review-grid>div{border:1px solid var(--border);border-radius:9px;padding:11px}.subheading{margin:20px 0 9px}.selection-block{margin-top:18px;padding-top:14px;border-top:1px solid #edf0f3}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.check-item{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--border);border-radius:8px;padding:9px;cursor:pointer}.check-item input{margin-top:2px;accent-color:var(--accent)}.check-item strong,.check-item small{display:block}.check-item strong{font-size:.78rem}.check-item small{font-size:.68rem;margin-top:2px}.inline-card{margin-top:18px;background:var(--panel-soft);box-shadow:none}.inline-form{display:flex;gap:8px}.danger-zone{margin-top:18px;padding:13px;border:1px solid #fecdca;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fffbfa}.danger-zone p{margin:3px 0 0;font-size:.77rem}.permission-matrix{display:flex;flex-direction:column;gap:11px;margin-top:17px}.permission-group{border:1px solid var(--border);border-radius:10px;overflow:hidden}.permission-group>header{padding:9px 11px;background:var(--panel-soft);display:flex;justify-content:space-between;align-items:center}.permission-group>header h3{margin:0;text-transform:capitalize}.permission-row{min-height:51px;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 11px;border-top:1px solid #edf0f3}.permission-row.active{background:#fbfdff}.permission-row label{display:flex;gap:9px;align-items:flex-start;min-width:0}.permission-row input{margin-top:3px;accent-color:var(--accent)}.permission-row strong,.permission-row small{display:block}.permission-row strong{font-size:.78rem}.permission-row small{font-size:.68rem;overflow-wrap:anywhere}.permission-row select{width:135px;min-height:33px;padding:5px 7px;font-size:.73rem}.empty{min-height:260px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;background:#fff;border:1px dashed #cfd6de;border-radius:13px}.empty-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f2f4f7;margin-bottom:9px;font-size:1.3rem;color:#667085}.empty h3{margin-bottom:4px}.empty p{max-width:480px;margin-bottom:13px;font-size:.83rem}.loading{min-height:180px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--muted);font-size:.83rem}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid #d0d5dd;border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.boot-screen{min-height:100vh;display:grid;place-items:center;align-content:center;gap:10px}.boot-screen p{font-size:.82rem}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);background:#fff}.login-visual{background:radial-gradient(circle at 18% 15%,#244c87 0,#162d52 35%,#101828 78%);color:#fff;display:grid;align-items:center;padding:8vw;min-height:100vh}.login-copy{max-width:650px}.login-copy h1{font-size:clamp(2rem,4vw,4rem);line-height:1.02;letter-spacing:-.05em;margin:12px 0 18px}.login-copy p{color:#cbd5e1;max-width:590px;font-size:.98rem}.eyebrow{display:inline-block;font-size:.75rem;font-weight:750;color:#9cc2ff;text-transform:uppercase;letter-spacing:.08em}.login-security{margin-top:25px;display:flex;gap:8px;flex-wrap:wrap}.login-security span{background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:7px 10px;font-size:.74rem;color:#e2e8f0}.login-panel{display:grid;place-items:center;padding:28px}.login-card{width:min(390px,100%);display:flex;flex-direction:column;gap:14px}.login-logo{margin-bottom:8px}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:3px;background:#f2f4f7;border-radius:9px;gap:3px}.segmented button{min-height:34px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:.78rem;font-weight:700}.segmented button.active{background:#fff;color:var(--text);box-shadow:0 1px 3px #10182814}.login-note{text-align:center;font-size:.68rem}@media(max-width:1100px){.role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid{grid-template-columns:1fr}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-page{grid-template-columns:1fr 420px}.login-visual{padding:6vw}.tenant-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.app-shell{display:block}.sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;height:64px;padding:5px 8px calc(5px + env(safe-area-inset-bottom));flex-direction:row;align-items:center;border-top:1px solid #344054}.brand,.sidebar-user{display:none}.nav-list{width:100%;height:100%;flex:1 1 auto;min-width:0;min-height:0;flex-direction:row;justify-content:flex-start;gap:3px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#667085 transparent;padding:0 0 2px}.nav-item{flex:1;min-width:0;min-height:51px;padding:4px 3px;flex-direction:column;justify-content:center;gap:2px;text-align:center;font-size:.64rem}.nav-item .nav-label{width:100%;max-width:100%;text-align:center;line-height:1.05}.nav-icon{font-size:.98rem;line-height:1}.topbar{min-height:66px;padding:12px 15px}.topbar p{display:none}.content{padding:15px 12px calc(82px + env(safe-area-inset-bottom))}.stats-grid{grid-template-columns:repeat(3,1fr);gap:7px}.card{padding:13px}.stat-value{font-size:1.35rem}.stat-label{font-size:.68rem}.role-grid{grid-template-columns:1fr}.users-table .data-head{display:none}.users-table .data-row{grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:11px}.users-table .data-row>span:nth-child(2),.users-table .data-row>span:nth-child(3){display:none}.users-table .data-row>span:nth-child(4){grid-column:1;padding-left:40px}.users-table .data-row>span:nth-child(5){grid-column:2;grid-row:1 / span 2}.tenant-card-main{align-items:flex-start}.card-actions{justify-content:stretch}.card-actions .btn{flex:1}.login-page{display:block;background:#f7f9fc}.login-visual{display:none}.login-panel{min-height:100vh;padding:20px}}@media(max-width:560px){.top-actions .btn{padding-inline:10px}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid>:last-child{grid-column:1 / -1}.tenant-card-main{flex-direction:column;gap:8px}.tenant-badges{justify-content:flex-start}.tenant-meta,.detail-grid,.review-grid,.form-grid,.check-grid{grid-template-columns:1fr}.form-span{grid-column:auto}.module-grid{grid-template-columns:1fr}.wizard-step small{display:none}.wizard-steps:before{left:10%;right:10%}.modal-backdrop{padding:0;align-items:end}.modal{width:100%;max-height:94vh;border-radius:16px 16px 0 0}.modal-footer{flex-wrap:wrap}.modal-footer .btn{flex:1}.permission-row{align-items:flex-start;flex-direction:column}.permission-row select{width:100%;margin-left:26px;width:calc(100% - 26px)}.inline-form{flex-direction:column}.danger-zone{align-items:stretch;flex-direction:column}.login-panel{padding:18px}}.mfa-secret{margin:12px 0 16px;padding:13px;border-radius:9px;background:#101828;color:#fff}.mfa-secret span,.mfa-secret small{display:block;color:#98a2b3;font-size:.7rem}.mfa-secret code{display:block;margin:8px 0;font-size:.95rem;font-weight:800;letter-spacing:.12em;overflow-wrap:anywhere}.customers-table .data-row{grid-template-columns:.55fr minmax(220px,1.5fr) .9fr .45fr auto}.customers-table .data-row>span:nth-child(2) strong,.customers-table .data-row>span:nth-child(2) small{display:block}.customers-table .data-row>span:nth-child(2) small{margin-top:2px;font-size:.7rem}.row-actions{display:flex;gap:6px;justify-content:flex-end;align-items:center;flex-wrap:wrap}.row-actions .btn{min-height:32px;padding:5px 9px;font-size:.72rem}.project-list{display:flex;flex-direction:column;gap:7px}.project-row{--depth:0;display:grid;grid-template-columns:minmax(280px,1.7fr) .45fr .7fr auto;gap:12px;align-items:center;min-height:58px;padding:8px 10px 8px calc(10px + var(--depth) * 22px);border:1px solid var(--border);border-radius:10px;background:#fff}.project-tree-cell{display:flex;align-items:center;gap:9px;min-width:0}.project-tree-cell>div{min-width:0}.project-tree-cell strong,.project-tree-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-tree-cell small{margin-top:3px;font-size:.7rem}.tree-guide{width:18px;flex:0 0 18px;color:#98a2b3;text-align:center;font-weight:800}.project-dates{white-space:nowrap}.status-select{min-height:32px;max-width:150px;border:1px solid #cfd6de;border-radius:8px;padding:4px 8px;background:#fff;color:var(--text);font-size:.72rem;font-weight:700}.status-select:disabled{opacity:.6;cursor:wait}.project-member-list{display:flex;flex-direction:column;gap:6px}.project-member-option{min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;align-items:center;border:1px solid var(--border);border-radius:8px;padding:7px 9px}.project-member-option label{display:flex;align-items:flex-start;gap:8px;min-width:0}.project-member-option label input{margin-top:3px;accent-color:var(--accent)}.project-member-option label strong,.project-member-option label small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-member-option label small{font-size:.68rem}.project-member-option select{width:100%;min-height:34px;border:1px solid #cfd6de;border-radius:8px;padding:5px 7px;background:#fff}@media(max-width:980px){.project-row{grid-template-columns:minmax(220px,1fr) auto}.project-status{grid-column:2;grid-row:1}.project-dates{grid-column:1;padding-left:27px}.project-row .row-actions{grid-column:2;grid-row:2}}@media(max-width:820px){.nav-list{overflow-x:auto;overflow-y:hidden;justify-content:flex-start;scrollbar-width:thin;scrollbar-color:#667085 transparent}.nav-list::-webkit-scrollbar{display:block;height:4px}.nav-list::-webkit-scrollbar-thumb{background:#667085;border-radius:999px}.nav-item{flex:0 0 78px}.customers-table .data-head{display:none}.customers-table .data-row{grid-template-columns:80px minmax(0,1fr) auto;gap:7px}.customers-table .data-row>span:nth-child(3){display:none}.customers-table .data-row>span:nth-child(4){grid-column:1;grid-row:2}.customers-table .data-row>span:nth-child(5){grid-column:2 / -1;grid-row:2}}@media(max-width:620px){.project-row{display:flex;flex-wrap:wrap;align-items:flex-start;padding-left:calc(9px + min(var(--depth),4)*12px)}.project-tree-cell{flex:1 1 calc(100% - 80px)}.project-status{margin-left:auto}.project-dates{flex:1 1 100%;padding-left:27px}.project-row .row-actions{flex:1 1 100%;justify-content:flex-start;padding-left:27px}.project-member-option{grid-template-columns:1fr}}.task-toolbar-actions{display:flex;align-items:center;gap:8px}.task-toolbar-actions select{min-height:36px;border:1px solid #cfd6de;border-radius:8px;padding:6px 9px;background:#fff;color:var(--text);font-size:.76rem}.task-list{display:flex;flex-direction:column;gap:7px}.task-row{--depth:0;display:grid;grid-template-columns:minmax(300px,1.65fr) .7fr .85fr auto;gap:12px;align-items:center;min-height:60px;padding:8px 10px 8px calc(10px + var(--depth) * 22px);border:1px solid var(--border);border-radius:10px;background:#fff}.task-tree-cell{display:flex;align-items:center;gap:9px;min-width:0}.task-tree-cell>div{min-width:0}.task-tree-cell strong,.task-tree-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-tree-cell small{margin-top:3px;font-size:.7rem}.task-badges{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.task-dates{white-space:nowrap}@media(max-width:1080px){.task-row{grid-template-columns:minmax(230px,1fr) auto}.task-badges{grid-column:2;grid-row:1;justify-content:flex-end}.task-dates{grid-column:1;padding-left:27px}.task-row .row-actions{grid-column:2;grid-row:2}}@media(max-width:620px){.task-toolbar{align-items:stretch;flex-direction:column}.task-toolbar-actions{width:100%}.task-toolbar-actions select{flex:1;min-width:0}.task-row{display:flex;flex-wrap:wrap;align-items:flex-start;padding-left:calc(9px + min(var(--depth),4)*12px)}.task-tree-cell{flex:1 1 100%}.task-badges{flex:1 1 100%;padding-left:27px;justify-content:flex-start}.task-dates{flex:1 1 100%;padding-left:27px}.task-row .row-actions{flex:1 1 100%;justify-content:flex-start;padding-left:27px}}.company-chat-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:12px;min-height:620px}.chat-channel-list{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:auto}.chat-channel-item{width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:9px;padding:10px;color:var(--text);cursor:pointer}.chat-channel-item:hover{background:#f8fafc}.chat-channel-item.active{background:#eef4ff;border-color:#c9dbff}.chat-channel-title{display:block;font-size:.82rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-channel-meta{display:flex;gap:6px;align-items:center;margin-top:4px;color:var(--muted);font-size:.68rem}.chat-channel-item small{display:block;margin-top:6px;color:var(--muted);font-size:.67rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-channel-main{min-width:0;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden;display:flex;flex-direction:column}.chat-channel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border)}.chat-channel-header h3{margin:0;font-size:.92rem}.chat-channel-header small{color:var(--muted)}.chat-thread{display:flex;flex-direction:column;min-height:0;flex:1}.chat-messages{flex:1;min-height:340px;max-height:560px;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:#f8fafc}.chat-message{align-self:flex-start;width:min(78%,720px);border:1px solid var(--border);border-radius:12px 12px 12px 3px;background:#fff;padding:9px 11px;box-shadow:0 1px 2px #10182808}.chat-message-own{align-self:flex-end;border-radius:12px 12px 3px;background:#eef4ff;border-color:#d1e0ff}.chat-message header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.chat-message header strong{font-size:.72rem}.chat-message header span{color:var(--muted);font-size:.62rem;white-space:nowrap}.chat-body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45;font-size:.8rem}.chat-deleted{margin:0;color:var(--muted);font-style:italic;font-size:.76rem}.chat-message footer{min-height:19px;margin-top:7px;display:flex;justify-content:space-between;align-items:center;gap:8px}.chat-message footer small{color:var(--muted);font-size:.6rem}.chat-message-actions{display:flex;gap:8px}.chat-message-actions button{border:0;background:transparent;color:var(--muted);padding:0;font-size:.64rem;cursor:pointer}.chat-message-actions button:hover{color:var(--text);text-decoration:underline}.chat-edit-form textarea,.chat-composer textarea{width:100%;resize:vertical;border:1px solid #cfd6de;border-radius:9px;padding:9px 10px;font:inherit;color:var(--text);background:#fff}.chat-edit-form .row-actions{margin-top:6px}.chat-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;padding:10px 12px;border-top:1px solid var(--border);background:#fff}.chat-composer textarea{min-height:64px}.chat-storage-note{padding:7px 12px 9px;color:var(--muted);font-size:.62rem;background:#fff}.chat-attachments{margin-top:8px;display:flex;flex-wrap:wrap;gap:5px}@media(max-width:900px){.company-chat-layout{grid-template-columns:210px minmax(0,1fr);min-height:560px}.chat-message{width:min(88%,720px)}}@media(max-width:680px){.company-chat-layout{display:flex;flex-direction:column;min-height:0}.chat-channel-list{flex-direction:row;overflow-x:auto;padding:6px}.chat-channel-item{flex:0 0 165px}.chat-channel-main{min-height:560px}.chat-messages{max-height:58vh;padding:10px}.chat-message{width:92%}.chat-composer{grid-template-columns:1fr}.chat-composer .btn{width:100%}.chat-channel-header{align-items:flex-start}}.file-toolbar-actions{display:flex;align-items:center;gap:8px}.compact-search{min-height:36px;width:min(280px,42vw);border:1px solid #cfd6de;border-radius:8px;padding:6px 9px;background:#fff;color:var(--text);font:inherit;font-size:.76rem}.file-list{display:flex;flex-direction:column;gap:7px}.file-row{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(170px,1fr) .55fr auto;gap:12px;align-items:center;min-height:62px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:#fff}.file-main{display:flex;align-items:center;gap:9px;min-width:0}.file-icon{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:8px;background:#eef4ff;color:#344054;font-weight:900}.file-main>div{min-width:0}.file-main strong,.file-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-main small,.file-meta small{margin-top:3px;color:var(--muted);font-size:.68rem}.file-contexts{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.file-meta{white-space:nowrap}.file-drop{margin-top:14px;position:relative;min-height:126px;border:1px dashed #98a2b3;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:18px;text-align:center;background:#f8fafc;overflow:hidden}.file-drop input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.file-drop strong{font-size:.83rem}.file-drop small{max-width:520px;color:var(--muted);font-size:.68rem}.upload-file-list{margin-top:10px;display:flex;flex-direction:column;gap:5px}.upload-file-list>div{display:flex;justify-content:space-between;gap:10px;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:.74rem}.upload-file-list small{color:var(--muted)}.attachment-chip{border:1px solid #cfd6de;border-radius:999px;padding:4px 8px;background:#fff;color:var(--text);font:inherit;font-size:.65rem;cursor:pointer}.attachment-chip:hover{border-color:#98a2b3;background:#f8fafc}.chat-file-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--border);background:#fbfcfe}.chat-file-bar input{max-width:230px;font-size:.68rem}.chat-file-bar small{flex:1;color:var(--muted);font-size:.64rem}.chat-file-bar button{border:0;background:transparent;color:var(--muted);font-size:.64rem;cursor:pointer}@media(max-width:980px){.file-row{grid-template-columns:minmax(220px,1fr) auto}.file-contexts{grid-column:1}.file-meta{grid-column:2;grid-row:1;text-align:right}.file-row .row-actions{grid-column:2;grid-row:2}}@media(max-width:680px){.file-toolbar{align-items:stretch;flex-direction:column}.file-toolbar-actions{width:100%}.compact-search{flex:1;width:auto;min-width:0}.file-row{display:flex;flex-wrap:wrap}.file-main,.file-contexts{flex:1 1 100%}.file-meta{flex:1 1 auto;text-align:left}.file-row .row-actions{flex:1 1 100%;justify-content:flex-start}.chat-file-bar{align-items:flex-start;flex-wrap:wrap}.chat-file-bar small{flex:1 1 calc(100% - 240px)}}.time-stats{margin-bottom:12px}.time-tabs{display:flex;align-items:center;gap:6px;margin:0 0 12px;padding:5px;width:max-content;max-width:100%;border:1px solid var(--border);border-radius:10px;background:#fff;overflow-x:auto}.time-tabs button{border:0;border-radius:7px;padding:8px 11px;background:transparent;color:var(--muted);font:inherit;font-size:.74rem;font-weight:750;white-space:nowrap;cursor:pointer}.time-tabs button:hover{background:#f8fafc;color:var(--text)}.time-tabs button.active{background:#eef4ff;color:#233876}.time-list{display:flex;flex-direction:column;gap:7px}.time-row{display:grid;grid-template-columns:minmax(250px,1.1fr) minmax(220px,1fr) .55fr auto;gap:12px;align-items:center;min-height:64px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:#fff}.time-main,.time-context,.time-duration{min-width:0}.time-main strong,.time-main small,.time-context span,.time-context small,.time-duration strong,.time-duration small{display:block}.time-main strong,.time-context span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.time-main small,.time-context small,.time-duration small{margin-top:3px;color:var(--muted);font-size:.67rem}.time-duration{text-align:right}.time-duration strong{font-size:.9rem}.time-badges{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap;margin-top:4px}.calculated-time{min-height:38px;display:flex;align-items:center;padding:7px 10px;border:1px solid #b7d7c3;border-radius:8px;background:#f3fbf6;font-weight:850}.calculated-time.invalid{border-color:#efc0c0;background:#fff7f7;color:#8b3030;font-weight:700}.switch-field{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:#fbfcfe;cursor:pointer}.switch-field input{margin-top:2px}.switch-field span{min-width:0}.switch-field strong,.switch-field small{display:block}.switch-field strong{font-size:.78rem}.switch-field small{margin-top:3px;color:var(--muted);font-size:.66rem;line-height:1.35}@media(max-width:1060px){.time-row{grid-template-columns:minmax(230px,1fr) auto}.time-context{grid-column:1;grid-row:2}.time-duration{grid-column:2;grid-row:1}.time-row .row-actions{grid-column:2;grid-row:2}}@media(max-width:680px){.time-tabs{width:100%}.time-tabs button{flex:1 0 auto}.time-row{display:flex;flex-wrap:wrap;align-items:flex-start}.time-main,.time-context{flex:1 1 100%}.time-duration{flex:1 1 100%;text-align:left}.time-badges{justify-content:flex-start}.time-row .row-actions{flex:1 1 100%;justify-content:flex-start}}.commercial-list{display:flex;flex-direction:column;gap:7px}.commercial-row{display:grid;grid-template-columns:minmax(260px,1.35fr) auto minmax(150px,.55fr) auto;gap:12px;align-items:center;min-height:68px;padding:10px 11px;border:1px solid var(--border);border-radius:10px;background:#fff}.commercial-main,.commercial-total{min-width:0}.commercial-main strong,.commercial-main small,.commercial-total strong,.commercial-total small{display:block}.commercial-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.commercial-main small,.commercial-total small{margin-top:4px;color:var(--muted);font-size:.66rem}.commercial-status{white-space:nowrap}.commercial-total{text-align:right;white-space:nowrap}.commercial-total strong{font-size:.9rem}.commercial-items{margin-top:18px;border:1px solid var(--border);border-radius:10px;overflow:hidden}.commercial-items-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;background:var(--panel-soft);border-bottom:1px solid var(--border)}.commercial-items-head h3{margin:0;font-size:.82rem}.commercial-item{display:grid;grid-template-columns:28px minmax(220px,1fr) 90px 80px 110px 80px 110px 32px;gap:7px;align-items:center;padding:8px 9px;border-bottom:1px solid var(--border)}.commercial-item:last-child{border-bottom:0}.commercial-item input{width:100%;min-width:0;min-height:34px;border:1px solid #cfd6de;border-radius:7px;padding:5px 7px;font:inherit;font-size:.72rem;background:#fff}.commercial-item strong{text-align:right;font-size:.72rem;white-space:nowrap}.commercial-position{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#f2f4f7;color:var(--muted);font-size:.66rem;font-weight:800}.commercial-summary{margin:10px 0 0 auto;width:min(390px,100%);display:grid;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#fbfcfe}.commercial-summary span{display:flex;justify-content:space-between;gap:16px;font-size:.74rem}.commercial-summary span:last-child{margin-top:3px;padding-top:6px;border-top:1px solid var(--border);font-weight:800}@media(max-width:1080px){.commercial-row{grid-template-columns:minmax(230px,1fr) auto minmax(140px,.5fr)}.commercial-row .row-actions{grid-column:1 / -1;justify-content:flex-end}.commercial-item{grid-template-columns:28px minmax(190px,1fr) 80px 70px 100px 72px 100px 32px}}@media(max-width:760px){.commercial-row{display:flex;flex-wrap:wrap;align-items:flex-start}.commercial-main{flex:1 1 calc(100% - 110px)}.commercial-status{margin-left:auto}.commercial-total{flex:1 1 100%;text-align:left}.commercial-row .row-actions{flex:1 1 100%;justify-content:flex-start}.commercial-items{overflow-x:auto}.commercial-item{min-width:820px}.commercial-items-head{position:sticky;left:0}}.commercial-item-einvoice{grid-template-columns:28px minmax(190px,1fr) 78px 68px 96px 68px 110px minmax(120px,.6fr) 100px 32px;min-width:1080px}.commercial-item-einvoice select{width:100%;min-width:0;min-height:34px;border:1px solid #cfd6de;border-radius:7px;padding:5px 7px;background:#fff;color:var(--text);font:inherit;font-size:.7rem}.panel-section-title{margin:18px 0 8px;font-size:.86rem}.accounting-config{margin-top:12px}.compact-list{display:flex;flex-direction:column;gap:7px}.compact-row{display:flex;align-items:center;gap:10px;min-height:52px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:#fff}.compact-row>div:first-child{min-width:0;flex:1}.compact-row strong,.compact-row small{display:block}.compact-row small{margin-top:3px;color:var(--muted);font-size:.67rem}.accounting-journal{border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden}.accounting-journal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--panel-soft)}.accounting-journal-head strong,.accounting-journal-head small{display:block}.accounting-journal-head strong{font-size:.79rem}.accounting-journal-head small{margin-top:3px;color:var(--muted);font-size:.66rem}.journal-lines{display:flex;flex-direction:column}.journal-lines>div{display:grid;grid-template-columns:minmax(220px,1fr) 120px 120px;gap:10px;padding:7px 12px;border-top:1px solid var(--border);font-size:.7rem}.journal-lines>div span:nth-child(n+2){text-align:right;font-variant-numeric:tabular-nums}.journal-editor{margin-top:16px;border:1px solid var(--border);border-radius:10px;overflow:hidden}.journal-editor-line{display:grid;grid-template-columns:minmax(200px,1fr) minmax(180px,1fr) 110px 110px 32px;gap:7px;padding:8px 9px;border-top:1px solid var(--border);align-items:center}.journal-editor-line input,.journal-editor-line select{width:100%;min-width:0;min-height:34px;border:1px solid #cfd6de;border-radius:7px;padding:5px 7px;background:#fff;font:inherit;font-size:.72rem}@media(max-width:760px){.compact-row{flex-wrap:wrap}.accounting-journal-head{flex-direction:column}.journal-lines>div{grid-template-columns:1fr 90px 90px;min-width:520px}.journal-lines,.journal-editor{overflow-x:auto}.journal-editor-line{min-width:760px}}.accounting-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.accounting-config-grid .card{min-width:0}.accounting-config-grid .section-toolbar{margin-bottom:10px}@media(max-width:900px){.accounting-config-grid{grid-template-columns:1fr}}.pdf-branding-heading{margin-top:18px;align-items:flex-end}.pdf-branding-heading h3{margin:0 0 4px;font-size:.98rem}.pdf-branding-heading p{margin:0;color:var(--muted);font-size:.75rem}.pdf-branding-grid{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:22px}.pdf-logo-editor,.pdf-color-fields{display:flex;flex-direction:column;gap:10px}.pdf-logo-preview{min-height:126px;border:1px dashed #cfd6de;border-radius:10px;background:#fafbfc;display:grid;place-items:center;padding:16px;overflow:hidden}.pdf-logo-preview img{max-width:100%;max-height:92px;object-fit:contain;display:block}.pdf-logo-preview div{text-align:center;color:var(--muted)}.pdf-logo-preview strong,.pdf-logo-preview small{display:block}.pdf-logo-preview strong{color:var(--text);font-size:.8rem;margin-bottom:4px}.pdf-logo-preview small,.pdf-branding-hint{color:var(--muted);font-size:.67rem;line-height:1.4}.pdf-logo-input{display:none}.pdf-color-control{display:grid;grid-template-columns:44px 1fr;gap:8px}.field .pdf-color-picker{min-height:38px;padding:3px;cursor:pointer}.pdf-theme-preview{position:relative;border:1px solid #d0d5dd;border-left-width:4px;border-radius:9px;padding:16px 14px 13px;background:#fff;overflow:hidden;display:flex;flex-direction:column;gap:5px}.pdf-theme-bar{position:absolute;inset:0 0 auto 0;height:6px}.pdf-theme-preview strong{margin-top:4px;font-size:.88rem}.pdf-theme-preview span{font-size:.72rem}.pdf-theme-preview em{font-style:normal;font-size:.68rem;font-weight:750}.pdf-save-actions{margin-top:14px;justify-content:flex-end;align-items:center}.pdf-save-confirmation{color:var(--good);font-size:.75rem;font-weight:750}@media(max-width:760px){.pdf-branding-grid{grid-template-columns:1fr}.pdf-branding-heading{align-items:flex-start}}.summary-toolbar{align-items:stretch;flex-direction:column}.summary-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr)) auto;gap:10px;align-items:end;width:100%}.summary-filter-grid label{display:grid;gap:4px;font-size:.72rem;color:var(--muted);font-weight:700}.summary-filter-grid input,.summary-filter-grid select{width:100%;min-width:0}.summary-kpis{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin:12px 0}.summary-kpis>div{border:1px solid var(--border);border-radius:10px;background:#fbfcfe;padding:11px 12px;display:grid;gap:5px}.summary-kpis span{color:var(--muted);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.summary-kpis strong{font-size:1rem}.muted{color:var(--muted)}@media(max-width:1100px){.summary-filter-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.summary-kpis{grid-template-columns:repeat(3,minmax(120px,1fr))}}@media(max-width:700px){.summary-filter-grid{grid-template-columns:1fr}.summary-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.review-note{display:block;max-width:24rem;white-space:normal;line-height:1.35}.report-history-list{display:grid;gap:.75rem}.report-history-item{display:grid;gap:.35rem;padding:.9rem 1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle, rgba(127,127,127,.04))}.report-history-item>div{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem 1rem}.report-history-item small,.report-history-item span{color:var(--muted)}.report-history-item p{margin:.15rem 0 0;white-space:pre-wrap}.summary-presets{display:flex;gap:8px;flex-wrap:wrap}.summary-actions{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.summary-detail-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.summary-detail-head small{color:var(--muted)}.summary-detail-kpis{margin-top:0}.summary-detail-title{margin:18px 0 8px;font-size:.9rem}.summary-detail-table{border:1px solid var(--border);border-radius:10px;overflow:auto}.summary-detail-row{display:grid;grid-template-columns:minmax(105px,1.2fr) repeat(5,minmax(78px,1fr));gap:8px;align-items:center;min-width:600px;padding:8px 10px;border-top:1px solid var(--border);font-size:.75rem}.summary-detail-row:first-child{border-top:0}.summary-detail-row span:not(:first-child),.summary-detail-row strong{text-align:right}.summary-detail-header{background:#f7f9fb;color:var(--muted);font-weight:800;text-transform:uppercase;font-size:.65rem;letter-spacing:.03em}.summary-breakdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.summary-breakdown-row{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--border);font-size:.75rem}.summary-breakdown-row span{min-width:0;overflow:hidden;text-overflow:ellipsis}.summary-breakdown-row strong{white-space:nowrap}@media(max-width:700px){.summary-breakdown-grid{grid-template-columns:1fr}.summary-actions{width:100%}.summary-actions button{flex:1}}.payroll-close-comment{margin:7px 0 0;max-width:760px;color:var(--text)}.payroll-history-list{display:grid;gap:10px}.payroll-history-item{padding:13px 14px;border:1px solid var(--border);border-radius:10px;background:#fff}.payroll-history-item>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.payroll-history-item small{display:block;margin-top:5px;color:var(--muted)}.payroll-history-item p{margin:9px 0 0;white-space:pre-wrap}.holiday-settings-card{margin:14px 0}.holiday-settings-card h3{margin:0 0 12px}.holiday-settings-card .row-actions{margin-top:10px;justify-content:flex-end}.holiday-inline{display:block;margin-top:2px;font-size:.72rem;line-height:1.15;color:var(--text-muted, #64748b);font-weight:500}.vacation-policy-card{margin:14px 0}.vacation-policy-card h3{margin:0 0 12px}.vacation-policy-card .row-actions{margin-top:10px;justify-content:flex-end}.check-row{display:flex;align-items:center;gap:8px;min-height:38px}.check-row input{width:auto}.inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.warning-text{color:#b45309!important;font-weight:700}.vacation-overview-stats{margin-bottom:14px}.vacation-month-table .summary-detail-head,.vacation-month-table .summary-detail-row{display:grid;grid-template-columns:minmax(130px,1.4fr) minmax(90px,1fr) minmax(90px,1fr);gap:8px;align-items:center;min-width:380px;padding:8px 10px}.vacation-month-table .summary-detail-head{margin:0;background:#f7f9fb;color:var(--muted);font-weight:800;text-transform:uppercase;font-size:.65rem;letter-spacing:.03em}.vacation-month-table .summary-detail-head span:not(:first-child),.vacation-month-table .summary-detail-row span:not(:first-child){text-align:right}@media(max-width:700px){.inline-fields{grid-template-columns:1fr 1fr}}.payroll-check-card{margin:0 0 14px;padding:15px}.payroll-check-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}.payroll-check-header h3{margin:4px 0 0;font-size:1rem}.payroll-check-list{display:grid;gap:8px}.payroll-check-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:flex-start;padding:10px 11px;border:1px solid var(--border);border-radius:9px;background:#fff}.payroll-check-item.is-blocker{border-color:#fecdca;background:var(--danger-soft)}.payroll-check-item.is-warning{border-color:#fedf89;background:var(--warn-soft)}.payroll-check-item strong,.payroll-check-item small{display:block}.payroll-check-item strong{font-size:.82rem}.payroll-check-item small{margin-top:4px;color:var(--muted)}.payroll-check-hint{margin:10px 0 0;font-size:.76rem;color:var(--muted)}.payroll-check-ok{margin:0}@media(max-width:720px){.payroll-check-header{flex-direction:column}.payroll-check-item{grid-template-columns:1fr}.payroll-check-item .badge{justify-self:start}}.signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.signature-pad-wrap{display:grid;gap:8px;min-width:0}.signature-pad-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.signature-pad{display:block;width:100%;height:150px;border:1px solid var(--border,#d7dde8);border-radius:10px;background:#fff;touch-action:none;cursor:crosshair}.signature-pad-wrap small{color:var(--muted,#687386)}.work-report-attachment-list{display:grid;gap:8px;margin-top:12px}.work-report-attachment-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid var(--border,#d7dde8);border-radius:10px;background:var(--surface-subtle,#f8fafc)}.work-report-attachment-row>div{display:grid;gap:3px;min-width:0}.work-report-attachment-row strong,.work-report-attachment-row small{overflow-wrap:anywhere}.work-report-attachment-row small{color:var(--muted,#687386)}.pending-file-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.pending-file-list span{padding:6px 9px;border-radius:999px;background:var(--surface-subtle,#f3f6fb);border:1px solid var(--border,#d7dde8);font-size:.82rem}@media(max-width:800px){.signature-grid{grid-template-columns:1fr}.signature-pad{height:135px}.work-report-attachment-row{align-items:flex-start;flex-direction:column}.work-report-attachment-row button{width:100%}}.dashboard-page{display:flex;flex-direction:column;gap:18px}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.dashboard-heading h2{margin:0 0 3px;font-size:1.12rem}.dashboard-heading p{margin:0;color:var(--muted);font-size:.78rem}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.dashboard-kpi{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-width:0;min-height:118px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--panel);color:var(--text);box-shadow:0 1px 2px #10182805;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.dashboard-kpi:hover{border-color:#b8c7da;box-shadow:0 5px 16px #1018280e;transform:translateY(-1px)}.dashboard-kpi-attention{border-color:#f4c7b8;background:linear-gradient(180deg,#fff,#fff9f6)}.dashboard-kpi-label{color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.dashboard-kpi strong{margin-top:9px;font-size:1.55rem;line-height:1;letter-spacing:-.035em}.dashboard-kpi strong.dashboard-kpi-status{font-size:1.03rem;letter-spacing:-.015em;margin-top:13px}.dashboard-kpi small{margin-top:auto;padding-top:8px;color:var(--muted);font-size:.68rem;line-height:1.25}.dashboard-main-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.dashboard-section-card{min-width:0;padding:0;overflow:hidden}.dashboard-section-head{min-height:64px;padding:14px 15px 11px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border)}.dashboard-section-head h3{margin:0 0 3px;font-size:.9rem}.dashboard-section-head small{display:block;color:var(--muted);font-size:.68rem}.dashboard-section-head .btn{min-height:30px;padding:5px 8px;font-size:.7rem}.dashboard-list{display:flex;flex-direction:column}.dashboard-list-row{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-bottom:1px solid #edf0f3;background:#fff;color:var(--text);padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}button.dashboard-list-row:hover{background:#f8fafc}.dashboard-list-row:last-child{border-bottom:0}.dashboard-list-static{cursor:default}.dashboard-list-main{min-width:0}.dashboard-list-main strong,.dashboard-list-main small{display:block}.dashboard-list-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.dashboard-list-main small{margin-top:3px;color:var(--muted);font-size:.66rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-list-meta{flex:0 0 auto;display:flex;align-items:flex-end;flex-direction:column;gap:4px}.dashboard-list-meta small{color:var(--muted);font-size:.64rem}.dashboard-empty{padding:18px 15px;color:var(--muted);font-size:.76rem}.dashboard-approval-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px}.dashboard-approval-grid>div{border:1px solid var(--border);border-radius:10px;padding:12px;background:var(--panel-soft)}.dashboard-approval-grid span{display:block;color:var(--muted);font-size:.69rem}.dashboard-approval-grid strong{display:block;margin-top:5px;font-size:1.25rem}.dashboard-good-note{margin:0 14px 14px;padding:9px 10px;border-radius:9px;background:var(--good-soft);color:var(--good);font-size:.7rem;font-weight:700}.dashboard-payroll-status{padding:17px 15px 18px}.dashboard-payroll-status p{margin:9px 0 0;color:var(--muted);font-size:.72rem}.dashboard-admin-block{margin-top:2px}.dashboard-block-title{margin-bottom:10px}.dashboard-block-title h3{margin:0 0 3px;font-size:.9rem}.dashboard-block-title p{margin:0;color:var(--muted);font-size:.7rem}.dashboard-admin-block .settings-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1280px){.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-admin-block .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-main-grid{grid-template-columns:1fr}.dashboard-kpi{min-height:106px;padding:12px}.dashboard-heading{align-items:flex-start}}@media(max-width:520px){.dashboard-heading{flex-direction:column}.dashboard-heading .btn{width:100%}.dashboard-kpi-grid{grid-template-columns:1fr 1fr;gap:7px}.dashboard-kpi{min-height:102px;padding:10px}.dashboard-kpi strong{font-size:1.3rem}.dashboard-kpi strong.dashboard-kpi-status{font-size:.88rem}.dashboard-kpi small{font-size:.62rem}.dashboard-section-head{padding:12px}.dashboard-list-row{padding:10px 12px}.dashboard-approval-grid{grid-template-columns:1fr;padding:12px}.dashboard-admin-block .settings-grid{grid-template-columns:1fr}}.calendar-page{display:flex;flex-direction:column;gap:13px;min-width:0}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px}.calendar-toolbar-main{display:flex;align-items:center;gap:13px;min-width:0}.calendar-nav-buttons{display:flex;align-items:center;gap:6px;flex:0 0 auto}.calendar-nav-buttons .btn:first-child,.calendar-nav-buttons .btn:last-child{min-width:35px;padding-left:9px;padding-right:9px;font-size:1.15rem;line-height:1}.calendar-heading{min-width:0}.calendar-heading h2{margin:0;font-size:1.08rem;text-transform:capitalize}.calendar-heading small{display:block;margin-top:2px;color:var(--muted);font-size:.68rem}.calendar-view-switch{flex:0 0 auto}.calendar-legend{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.calendar-legend>.btn{margin-left:auto}.calendar-filter{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);padding:6px 9px;display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:.69rem;font-weight:750;cursor:pointer;opacity:.58}.calendar-filter.active{opacity:1;color:var(--text);box-shadow:0 1px 2px #1018280a}.calendar-filter-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.calendar-card{padding:0;overflow:hidden;min-width:0}.calendar-scroll{overflow:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));min-width:980px;background:#e6eaf0;gap:1px}.calendar-grid-month{grid-auto-rows:minmax(124px,auto)}.calendar-grid-week{grid-auto-rows:auto;min-height:520px}.calendar-weekday{position:sticky;top:0;z-index:2;padding:8px 9px;background:#f5f7fa;color:var(--muted);font-size:.66rem;font-weight:850;text-align:center;text-transform:uppercase;letter-spacing:.04em}.calendar-day{min-width:0;padding:7px;background:#fff;display:flex;flex-direction:column;gap:7px}.calendar-grid-week .calendar-day{min-height:480px}.calendar-day.is-outside{background:#fafbfc}.calendar-day.is-outside .calendar-day-head{opacity:.48}.calendar-day.is-today{box-shadow:inset 0 0 0 2px #9db6e6}.calendar-day-head{min-height:23px;display:flex;align-items:center;justify-content:space-between;gap:5px}.calendar-day-head strong{font-size:.72rem}.calendar-day-head span{padding:2px 5px;border-radius:999px;background:#eef4ff;color:#31549b;font-size:.56rem;font-weight:800}.calendar-events{display:flex;flex-direction:column;gap:4px;min-width:0}.calendar-event{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-width:0;border:0;border-left:3px solid currentColor;border-radius:6px;background:#f6f8fb;color:#46566d;padding:5px 6px;text-align:left;cursor:pointer;overflow:hidden}.calendar-event:hover{filter:brightness(.985);box-shadow:0 1px 3px #10182814}.calendar-event.is-static{cursor:default}.calendar-event.is-static:hover{filter:none;box-shadow:none}.calendar-event-top{display:flex;align-items:flex-start;justify-content:space-between;gap:5px;min-width:0}.calendar-event b{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:.65rem;font-weight:800}.calendar-event em{flex:0 0 auto;font-style:normal;font-size:.52rem;font-weight:750;color:var(--muted)}.calendar-event small{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.56rem}.calendar-kind-appointment{color:#2f6f91}.calendar-kind-holiday{color:#b2394a}.calendar-kind-task{color:#446bb3}.calendar-kind-project{color:#7655a6}.calendar-kind-vacation{color:#3b8665}.calendar-kind-sick{color:#b07138}.calendar-kind-absence{color:#707c8d}.calendar-kind-report{color:#267d89}.calendar-event.calendar-kind-appointment{background:#eef7fb}.calendar-event.calendar-kind-holiday{background:#fff2f4}.calendar-event.calendar-kind-task{background:#f2f6fd}.calendar-event.calendar-kind-project{background:#f7f3fb}.calendar-event.calendar-kind-vacation{background:#f0f8f4}.calendar-event.calendar-kind-sick{background:#fff7ef}.calendar-event.calendar-kind-absence{background:#f5f6f8}.calendar-event.calendar-kind-report{background:#eff8f9}.calendar-empty-day{padding:7px;color:#a0a8b3;font-size:.62rem;text-align:center}@media(max-width:900px){.calendar-toolbar{align-items:stretch;flex-direction:column}.calendar-view-switch{align-self:flex-start}.calendar-legend>.btn{margin-left:0}.calendar-grid{grid-template-columns:repeat(7,minmax(132px,1fr));min-width:924px}}@media(max-width:600px){.calendar-toolbar-main{align-items:flex-start;flex-direction:column}.calendar-nav-buttons{width:100%}.calendar-nav-buttons .btn:nth-child(2){flex:1}.calendar-view-switch{width:100%}.calendar-view-switch button{flex:1}.calendar-legend{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.calendar-filter{flex:0 0 auto}.calendar-legend>.btn{flex:0 0 auto}.calendar-grid{grid-template-columns:repeat(7,minmax(128px,1fr));min-width:896px}.calendar-grid-month{grid-auto-rows:minmax(116px,auto)}}.nav-item{position:relative}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#f04438;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:800;line-height:1}.notifications-toolbar{align-items:flex-end}.notifications-toolbar small{color:#667085}.notification-list{display:grid;gap:10px}.notification-card{position:relative;display:grid;grid-template-columns:4px 1fr;overflow:hidden;background:#fff;border:1px solid #e4e7ec;border-radius:12px;box-shadow:0 1px 2px #1018280a}.notification-card.is-unread{border-color:#b2ddff;background:#f8fbff}.notification-marker{background:transparent}.notification-card.is-unread .notification-marker{background:#1570ef}.notification-body{padding:14px 16px;min-width:0}.notification-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.notification-head time{color:#667085;font-size:.78rem;white-space:nowrap}.notification-card h3{margin:9px 0 4px;font-size:.98rem;color:#101828}.notification-card p{margin:0;color:#475467;line-height:1.45}.notification-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}@media(max-width:760px){.nav-badge{position:absolute;top:2px;right:8px;min-width:17px;height:17px;padding:0 4px;font-size:.58rem}.notifications-toolbar{align-items:stretch}.notification-head{align-items:flex-start;flex-direction:column;gap:5px}.notification-body{padding:12px}}.professional-accounting{display:grid;gap:16px;margin-bottom:24px}.accounting-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:6px;background:var(--surface-2,#f3f5f8);border-radius:12px}.accounting-tabs button{border:0;background:transparent;padding:9px 12px;border-radius:9px;cursor:pointer;font-weight:650;color:inherit}.accounting-tabs button.active{background:var(--surface,#fff);box-shadow:0 1px 5px #00000014}.setup-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin:12px 0}.setup-checklist>div{display:flex;gap:8px;align-items:center;padding:10px;border:1px solid var(--border,#dce1e7);border-radius:9px}.report-values{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:flex-end}@media(max-width:700px){.accounting-tabs{overflow-x:auto;flex-wrap:nowrap}.accounting-tabs button{white-space:nowrap}.report-values{justify-content:flex-start}}.pro-suite{display:flex;flex-direction:column;gap:18px}.pro-suite-tabs{display:flex;flex-wrap:wrap;gap:8px}.pro-suite-tabs button{white-space:nowrap}.pro-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.pro-kpi-grid .card{min-height:105px;display:flex;flex-direction:column;justify-content:center;gap:8px}.pro-kpi-grid small{color:var(--muted,#64748b);font-weight:600}.pro-kpi-grid strong{font-size:1.55rem}.pro-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.compact-form{display:flex;flex-direction:column;gap:10px;margin:12px 0 18px}.inline-pro-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;align-items:end;margin:12px 0 18px}.inline-pro-form>.btn{align-self:end;margin-bottom:1px}.pro-mini-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.pro-mini-row{border:1px solid var(--border,#e2e8f0);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:3px}.pro-mini-row small{color:var(--muted,#64748b)}.pro-empty{padding:18px 0;color:var(--muted,#64748b)}.checkline,.employee-line{display:flex;gap:10px;align-items:center;justify-content:space-between}.checkline span,.employee-line span{display:flex;flex-direction:column;gap:3px;flex:1}.pro-subheading{margin-top:24px}@media(max-width:900px){.pro-columns{grid-template-columns:1fr}.pro-suite-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}}.flow-suite{display:flex;flex-direction:column;gap:16px}.flow-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.flow-head h3{margin:0 0 4px}.flow-head p{margin:0;color:var(--muted,#64748b)}.compact-kpis{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:10px 0 14px}.compact-kpis .card{min-height:82px;padding:12px}.compact-kpis strong{font-size:1.1rem}.pro-select-row{width:100%;background:transparent;text-align:left;color:inherit;cursor:pointer}.pro-select-row:hover,.pro-select-row.active{border-color:var(--primary,#2563eb);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary,#2563eb) 35%,transparent)}.flow-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0 14px}.flow-detail-head>div{display:flex;flex-direction:column;gap:4px}.flow-detail-head small{color:var(--muted,#64748b)}.project-cockpit-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.project-cockpit-card{display:flex;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--border,#e2e8f0);border-radius:12px;background:var(--surface,#fff);text-align:left;color:inherit;cursor:pointer}.project-cockpit-card.active,.project-cockpit-card:hover{border-color:var(--primary,#2563eb)}.project-cockpit-card>span{display:flex;flex-direction:column;gap:5px}.project-cockpit-card small{color:var(--muted,#64748b)}.project-metrics{align-items:flex-end;text-align:right}.quality-grid{display:flex;flex-direction:column;gap:8px;margin:12px 0 18px}.quality-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border,#e2e8f0);padding:9px 0}.quality-row span{display:flex;flex-direction:column;gap:3px}.quality-row small{color:var(--muted,#64748b)}.management-health{display:flex;flex-wrap:wrap;gap:8px}.forecast-bars{display:flex;flex-direction:column;gap:8px;margin-top:12px}.forecast-line{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid var(--border,#e2e8f0)}@media(max-width:800px){.project-cockpit-list{grid-template-columns:1fr}.project-cockpit-card{flex-direction:column}.project-metrics{align-items:flex-start;text-align:left}}.provision-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tenant-backup-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.tenant-backup-section h3{margin:0 0 4px}.backup-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.backup-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#fff}.backup-main{min-width:0;flex:1}.backup-main strong,.backup-main small{display:block}.backup-main strong{font-size:.82rem;overflow-wrap:anywhere}.backup-main small{margin-top:3px;font-size:.7rem;color:var(--muted);overflow-wrap:anywhere}.restore-confirmation{margin-top:12px;padding:14px;border:1px solid #efb5b5;border-radius:10px;background:#fff8f8}.restore-confirmation h4{margin:0 0 6px}.restore-confirmation p{margin:0 0 10px;font-size:.8rem}.restore-confirmation .row-actions{margin-top:10px}.text-danger{color:#b42318!important}@media(max-width:900px){.provision-choice{grid-template-columns:1fr}.backup-row{align-items:flex-start;flex-direction:column}.backup-row .row-actions{justify-content:flex-start}}.tenant-delete-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.tenant-delete-section h3{margin:0 0 4px}.tenant-delete-confirmation{margin-top:12px;padding:14px;border:1px solid #efb5b5;border-radius:10px;background:#fff8f8;display:flex;flex-direction:column;gap:12px}.tenant-delete-confirmation .form-grid.compact{margin:0}.tenant-delete-check{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#fff}.tenant-delete-check input{width:auto;margin-top:3px}.tenant-delete-check span{display:flex;flex-direction:column;gap:3px}.tenant-delete-check small{color:var(--muted);line-height:1.35}.danger-check{border-color:#efb5b5;background:snow}.full-restore-upload{margin:16px 0}.backup-drop-card{padding:24px;border:1px dashed #9fb3cf;border-radius:12px;background:#f8fbff;text-align:center}.backup-drop-card h3{margin:0 0 7px}.backup-drop-card p{max-width:720px;margin:0 auto 14px;color:var(--muted);line-height:1.45}.full-restore-preview{margin:14px 0}.full-restore-preview strong.truncate{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.full-restore-preview+.row-actions{justify-content:space-between;margin-bottom:8px}.catalog-page{display:flex;flex-direction:column;gap:16px}.catalog-import-card h4{margin:18px 0 10px}.catalog-import-file-row{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.catalog-import-file-row>.field{min-width:min(520px,100%);flex:1}.catalog-import-working{color:var(--muted);font-size:.8rem;font-weight:700;padding-bottom:10px}.catalog-import-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px 0;color:var(--muted);font-size:.76rem}.catalog-import-controls{margin-top:12px}.catalog-header-row{display:grid;grid-template-columns:100px auto;gap:8px}.catalog-mapping-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.catalog-preview-wrap{margin-top:14px;max-width:100%;overflow:auto;border:1px solid var(--border);border-radius:10px}.catalog-preview-table{border-collapse:collapse;min-width:100%;font-size:.75rem;background:#fff}.catalog-preview-table th,.catalog-preview-table td{padding:7px 9px;border-right:1px solid #edf0f3;border-bottom:1px solid #edf0f3;text-align:left;white-space:nowrap;max-width:280px;overflow:hidden;text-overflow:ellipsis}.catalog-preview-table th{position:sticky;top:0;background:var(--panel-soft);color:var(--muted);font-weight:800}.catalog-import-report{margin-top:18px;border-top:1px solid var(--border);padding-top:15px}.catalog-report-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.catalog-report-kpis span{padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--panel-soft);display:flex;flex-direction:column;gap:3px;color:var(--muted);font-size:.72rem}.catalog-report-kpis strong{font-size:1.1rem;color:var(--text)}.catalog-error-box{margin-top:12px;padding:12px;border:1px solid #fecdca;border-radius:10px;background:var(--danger-soft)}.catalog-error-box .section-toolbar{margin:0 0 8px}.catalog-error-list{max-height:240px;overflow:auto;display:flex;flex-direction:column;gap:6px}.catalog-error-list>div{display:flex;flex-direction:column;gap:2px;padding:7px 9px;border-radius:7px;background:#fff;font-size:.75rem}.catalog-error-list span{color:var(--danger)}.catalog-pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.catalog-pagination span{color:var(--muted);font-size:.75rem}.catalog-table .data-row{grid-template-columns:.55fr minmax(220px,1.7fr) .9fr .5fr .65fr}.catalog-page>.card>.section-toolbar>.field{min-width:min(430px,100%);margin:0}@media(max-width:800px){.catalog-table .data-row{grid-template-columns:90px minmax(0,1fr) auto}.catalog-table .data-row span:nth-child(3),.catalog-table .data-row span:nth-child(4){display:none}.catalog-mapping-grid,.catalog-header-row{grid-template-columns:1fr}.catalog-page>.card>.section-toolbar{align-items:stretch;flex-direction:column}.catalog-pagination{justify-content:space-between}}.notice-warning{margin:8px 0;padding:9px 11px;border:1px solid #fedf89;border-radius:8px;background:#fffaeb;color:#93370d;font-size:.78rem}.commercial-items-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.catalog-picker-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.catalog-picker-toolbar .field{flex:1;margin:0}.catalog-picker-toolbar>span{color:var(--muted);font-size:.78rem;white-space:nowrap;padding-bottom:8px}.catalog-picker-list{border:1px solid var(--border);border-radius:10px;overflow:hidden}.catalog-picker-row{width:100%;display:grid;grid-template-columns:110px minmax(220px,1fr) 70px 110px 70px 90px;gap:10px;align-items:center;text-align:left;padding:10px 12px;border:0;border-bottom:1px solid var(--border);background:#fff;color:var(--text);cursor:pointer;font:inherit}.catalog-picker-row:last-child{border-bottom:0}.catalog-picker-row:hover{background:var(--panel-soft)}.catalog-picker-number{font-weight:700;font-variant-numeric:tabular-nums}.catalog-picker-main{display:flex;min-width:0;flex-direction:column;gap:2px}.catalog-picker-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-picker-main small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-picker-pagination{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:14px}.catalog-picker-pagination span{color:var(--muted);font-size:.78rem}@media(max-width:900px){.catalog-picker-toolbar{align-items:stretch;flex-direction:column}.catalog-picker-row{grid-template-columns:90px minmax(190px,1fr) 65px 100px 65px 80px;min-width:720px}.catalog-picker-list{overflow-x:auto}}.procurement-suite{display:flex;flex-direction:column;gap:16px}.proc-lines{display:flex;flex-direction:column;gap:10px;margin-top:14px}.proc-line{display:grid;grid-template-columns:minmax(220px,2fr) 90px 90px 130px 90px minmax(180px,1fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--border,#e2e8f0);border-radius:12px;background:var(--surface,#fff)}.proc-line .field{margin:0}.proc-offer-line{display:grid;grid-template-columns:minmax(220px,1fr) 180px 180px 180px;gap:12px;align-items:end;padding:10px 0;border-bottom:1px solid var(--border,#e2e8f0)}.proc-offer-line>span{align-self:center}.procurement-suite .row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.procurement-suite .data-table{margin-top:12px}@media(max-width:1200px){.proc-line{grid-template-columns:repeat(3,minmax(150px,1fr))}.proc-offer-line{grid-template-columns:1fr 1fr}}@media(max-width:760px){.proc-line,.proc-offer-line{grid-template-columns:1fr}}.import-mapping-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:14px 0}.procurement-suite .table-card{overflow:auto}.procurement-suite .data-table .data-row{grid-template-columns:minmax(150px,1.15fr) minmax(220px,2fr) .65fr .85fr .65fr}.procurement-suite .data-table .data-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.procurement-suite .data-table .data-head>span{font-weight:800;color:var(--muted,#64748b)}@media(max-width:850px){.procurement-suite .data-table{overflow:auto}.procurement-suite .data-table .data-row{min-width:760px}}.resource-plan-row{display:grid;grid-template-columns:minmax(160px,240px) 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--border,#e5e7eb)}.resource-plan-row small{display:block;color:var(--muted,#6b7280);margin-top:3px}.resource-plan-bookings{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start}.resource-booking-chip{padding:7px 10px;border-radius:999px;background:#f3f4f6;font-size:.82rem;white-space:nowrap}.inventory-count-grid{display:grid;gap:8px}.inventory-count-grid .employee-line input{width:140px;text-align:right}.field-service-suite{max-width:1500px}.field-job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.field-job-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;border:1px solid #dbe2ea;background:#fff;border-radius:16px;padding:16px;cursor:pointer;box-shadow:0 1px 2px #0f172a0a;transition:.15s transform,.15s box-shadow}.field-job-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0f172a14}.field-job-card h3{margin:10px 0 6px;font-size:1rem}.field-job-card p{margin:0 0 6px}.field-job-card small{color:#64748b}.field-job-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.field-progress{height:5px;border-radius:999px;background:#e5e7eb;margin-top:14px;overflow:hidden}.field-progress span{display:block;height:100%;background:#2563eb;border-radius:inherit}.field-status-on_site{border-color:#f59e0b}.field-status-completed{opacity:.82}.field-mobile-detail{display:grid;gap:14px}.field-hero{padding:16px;border-radius:16px;background:#f8fafc}.field-hero h2{margin:8px 0 4px}.field-hero p{margin:0 0 6px}.field-action-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;position:sticky;top:0;z-index:2;background:#fff;padding:8px 0}.field-check{width:100%;display:grid;grid-template-columns:34px 1fr;gap:10px;text-align:left;align-items:center;border:0;border-bottom:1px solid #e5e7eb;background:transparent;padding:12px 4px;cursor:pointer}.field-check>span:first-child{font-size:1.4rem}.field-check.done{opacity:.65}.field-check.done strong{text-decoration:line-through}.field-check small{display:block;color:#64748b}.signature-canvas{display:block;width:100%;height:110px;border:1px dashed #94a3b8;border-radius:10px;background:#fff;touch-action:none;cursor:crosshair}@media(max-width:760px){.resource-plan-row,.field-job-grid{grid-template-columns:1fr}.field-job-card{padding:14px}.field-action-bar{grid-template-columns:1fr 1fr}.field-action-bar .btn{min-height:48px}.field-mobile-detail .card{padding:14px}.signature-canvas{height:140px}.inventory-count-grid .employee-line{align-items:center}.inventory-count-grid .employee-line input{width:110px}}.portal-page{min-height:100vh;background:var(--app-bg,#f5f7fa);color:var(--text,#172033)}.portal-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px clamp(18px,4vw,52px);background:#fff;border-bottom:1px solid var(--border,#e2e8f0);box-shadow:0 1px 5px #0f172a0a}.portal-header>div{display:flex;flex-direction:column;gap:2px}.portal-header small{color:var(--muted,#64748b)}.portal-content{max-width:1440px;margin:0 auto;padding:clamp(18px,3vw,38px)}.button.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 13px;border:1px solid var(--border,#d8dee8);border-radius:9px;background:#fff;font-weight:700;font-size:.82rem;cursor:pointer;color:var(--text,#172033)}.button.secondary-button:hover{background:var(--panel-soft,#f8fafc)}.automation-template-list{display:flex;flex-direction:column;gap:9px}.automation-run-history{max-height:360px;overflow:auto}@media(max-width:760px){.portal-header{align-items:flex-start;padding:12px 14px}.portal-content{padding:14px}.portal-content .pro-columns{grid-template-columns:1fr}.portal-content .employee-line{align-items:flex-start;flex-direction:column}.portal-content .employee-line>span:last-child{width:100%;flex-direction:row;flex-wrap:wrap}.portal-content .btn{min-height:42px}}.top-search{display:flex;align-items:center;gap:.45rem;min-width:min(34vw,430px)}.top-search input{width:100%;min-width:180px;padding:.62rem .8rem;border:1px solid var(--border,#d9dee8);border-radius:9px;background:var(--surface,#fff);color:inherit}.top-search button{border:0;border-radius:9px;padding:.62rem .85rem;background:var(--primary,#1f4fd0);color:#fff;font-weight:650;cursor:pointer}.search-result-button,.workspace-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;border:0;background:transparent;color:inherit;text-align:left;padding:.65rem;cursor:pointer;border-radius:9px}.search-result-button:hover,.workspace-row:hover{background:#505f7d14}.search-result-button>span:first-child,.workspace-row>span:first-child{display:flex;flex-direction:column;gap:.3rem;min-width:0}.offline-meta{display:flex;flex-wrap:wrap;gap:1rem;margin:.5rem 0 1rem;color:var(--muted,#64748b);font-size:.9rem}.inline-form{display:flex;gap:.5rem;align-items:center;margin:.6rem 0}.inline-form input{flex:1;min-width:0}.secret-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}@media(max-width:900px){.top-search{min-width:0;width:100%}.top-search button{display:none}.topbar{gap:.8rem;align-items:flex-start;flex-direction:column}.top-actions{width:100%}.inline-form{align-items:stretch;flex-direction:column}}
