@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/poppins-latin-300-normal-Dku2WoCh.woff2) format("woff2"),url(/assets/poppins-latin-300-normal-DCNuMXUj.woff) format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2) format("woff2"),url(/assets/poppins-latin-400-normal-BOb3E3N0.woff) format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/poppins-latin-500-normal-C8OXljZJ.woff2) format("woff2"),url(/assets/poppins-latin-500-normal-DGXqpDMm.woff) format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2) format("woff2"),url(/assets/poppins-latin-600-normal-BJdTmd5m.woff) format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-700-normal-Qrb0O0WB.woff2) format("woff2"),url(/assets/poppins-latin-700-normal-BVuQR_eA.woff) format("woff")}*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:#f4f6f9;color:#1f2937}a{text-decoration:none;color:inherit}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#28284a,#8a46d9)}.login-card{background:#fff;padding:40px;border-radius:8px;width:360px;box-shadow:0 10px 30px #0003}.login-card h1{margin:0 0 4px;font-size:18px}.subtitle{color:#6b7280;margin-bottom:20px;font-size:13px}.login-card label{display:block;margin:12px 0 4px;font-size:12px;font-weight:600}.login-card input{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:6px}.login-card select{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:6px;background:#fff}.login-card button{width:100%;margin-top:20px;padding:11px;background:#28284a;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer}.login-card button:hover{background:#15152b}.hint{font-size:11.5px;color:#9ca3af;margin-top:14px;text-align:center}.alert-error{background:#fee2e2;color:#b91c1c;padding:8px 12px;border-radius:6px;font-size:12px;margin-bottom:10px}.alert-success{background:#dcfce7;color:#166534;padding:10px 14px;border-radius:6px;font-size:12px;margin-bottom:10px;line-height:1.4}.login-card a{color:#28284a;font-weight:600;text-decoration:none}.login-card a:hover{text-decoration:underline}.app-shell{display:flex;min-height:100vh}.sidebar{width:230px;background:#111827;color:#e5e7eb;display:flex;flex-direction:column;padding:20px 0}.sidebar nav{overflow-y:auto;flex:1}.sidebar-brand{font-size:17px;font-weight:700;padding:0 20px 20px;color:#fff}.nav-link{display:flex;align-items:center;gap:10px;padding:11px 20px;color:#cbd5e1;font-size:13px}.nav-group-label{padding:14px 20px 4px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;font-weight:700}.nav-link:hover{background:#1f2937;color:#fff}.nav-link.active{background:#28284a;color:#fff;font-weight:600}.sidebar-footer{margin-top:auto;padding:16px 20px;border-top:1px solid #1f2937}.user-name{font-weight:600;font-size:13px}.user-role{font-size:11.5px;color:#9ca3af;margin-bottom:10px}.btn-logout{width:100%;padding:8px;background:#374151;color:#fff;border:none;border-radius:6px;cursor:pointer}.btn-logout:hover{background:#4b5563}.app-content{flex:1;padding:28px;overflow-y:auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.topbar-search{flex:1;max-width:480px}.topbar-search input{width:100%;padding:9px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;background:#fff}.topbar-bell{position:relative;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:14px}.topbar-bell-count{position:absolute;top:-6px;right:-6px;background:#dc2626;color:#fff;font-size:10px;font-weight:700;border-radius:8px;padding:1px 5px}.page h1{margin-top:0;font-size:20px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:10px}.page-header button{padding:9px 16px;background:#28284a;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.page-header input{padding:9px 12px;border:1px solid #d1d5db;border-radius:6px;min-width:260px}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:#fff;padding:18px;border-radius:8px;box-shadow:0 1px 3px #00000014}.stat-value{font-size:21px;font-weight:700;color:#28284a}.stat-label{font-size:12px;color:#6b7280;margin-top:4px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panel{background:#fff;padding:20px;border-radius:8px;box-shadow:0 1px 3px #00000014}.panel h3{margin-top:0}.checklist-panel{margin-top:20px}.muted{color:#6b7280;font-size:12px}.simple-list{list-style:none;padding:0;margin:0}.simple-list li{padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:13px}.simple-list li:last-child{border-bottom:none}.simple-list li.clickable{cursor:pointer}.simple-list li.clickable:hover{color:#28284a}.table-wrap{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #00000014}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:12px 16px;background:#f9fafb;font-size:11.5px;text-transform:uppercase;color:#6b7280;border-bottom:1px solid #e5e7eb}.data-table td{padding:12px 16px;border-bottom:1px solid #f3f4f6;font-size:13px}.data-table tr.clickable{cursor:pointer}.data-table tr.clickable:hover{background:#f9fafb}.empty-cell{text-align:center;color:#9ca3af;padding:30px!important}.badge{display:inline-block;padding:3px 10px;border-radius:8px;background:#e8e8f3;color:#15152b;font-size:11.5px;font-weight:600}.inline-form{background:#fff;padding:18px;border-radius:8px;margin-bottom:18px;display:flex;flex-wrap:wrap;gap:10px;box-shadow:0 1px 3px #00000014}.inline-form input,.inline-form select,.inline-form textarea{padding:9px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;flex:1;min-width:160px}.inline-form textarea{width:100%;min-height:60px;flex-basis:100%}.inline-form .field-inline{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:#6b7280;font-weight:600;flex:1;min-width:120px}.invoice-summary{background:#fff;padding:18px;border-radius:8px;box-shadow:0 1px 3px #00000014;margin-bottom:18px}.invoice-summary table{width:100%;border-collapse:collapse}.invoice-summary td{padding:6px 4px}.invoice-summary td:last-child{text-align:right}.invoice-summary .total-row td{font-weight:700;border-top:1px solid #e5e7eb;padding-top:10px}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.inline-form button{padding:9px 18px;background:#28284a;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.btn-small{padding:4px 10px;font-size:11.5px;border:none;border-radius:5px;background:#28284a;color:#fff;cursor:pointer;margin-left:6px}.btn-small.btn-danger{background:#dc2626}select{padding:9px 12px;border:1px solid #d1d5db;border-radius:6px}.btn-secondary{padding:9px 16px;background:#fff;color:#28284a;border:1px solid #28284a;border-radius:6px;cursor:pointer;font-weight:600}.btn-secondary:hover{background:#f3f3f9}.btn-secondary:disabled,.page-header button:disabled,.inline-form button:disabled{opacity:.6;cursor:not-allowed}.permission-matrix input[type=checkbox]{width:16px;height:16px;cursor:pointer}.stat-card{transition:transform .15s ease,box-shadow .15s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.chart-card h3{margin-top:0;margin-bottom:12px;font-size:13.5px}.portal-sidebar .sidebar-brand{display:flex;align-items:center;gap:8px}.portal-avatar{width:40px;height:40px;border-radius:50%;background:#28284a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;margin:0 auto 8px}.portal-sidebar .sidebar-footer{text-align:center}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.portal-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f0f0f0;gap:12px}.portal-row:last-child{border-bottom:none}.portal-card-list{display:flex;flex-direction:column;gap:10px}.portal-card{background:#fff;border-radius:8px;padding:14px 18px;box-shadow:0 1px 3px #00000014;display:flex;justify-content:space-between;align-items:center;gap:12px}.portal-card-main{display:flex;flex-direction:column;gap:2px}.portal-badge{display:inline-block;padding:4px 12px;border-radius:8px;font-size:11.5px;font-weight:700;background:#e8e8f3;color:#15152b;white-space:nowrap}.portal-badge-green{background:#dcfce7;color:#15803d}.portal-badge-amber{background:#fef3c7;color:#b45309}.portal-badge-red{background:#fee2e2;color:#b91c1c}@media (max-width: 900px){.two-col,.portal-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,1fr)}}.landing-page{min-height:100vh;background:#f9fafb;padding:48px 24px}.landing-hero{text-align:center;max-width:640px;margin:0 auto 40px}.landing-hero h1{font-size:26px;color:#28284a;margin-bottom:8px}.landing-hero p{color:#4b5563;margin-bottom:4px}.plan-grid{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;max-width:1080px;margin:0 auto;align-items:stretch}.plan-card{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:28px 24px;width:300px;display:flex;flex-direction:column;box-shadow:0 1px 2px #0000000a}.plan-card.featured{border-color:#28284a;box-shadow:0 8px 24px #1f386426;transform:translateY(-4px)}.plan-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#28284a;color:#fff;font-size:11.5px;font-weight:600;padding:4px 12px;border-radius:8px}.plan-card h3{font-size:17px;margin-bottom:4px}.plan-tagline{color:#6b7280;font-size:12px;margin-bottom:12px;min-height:18px}.plan-price{margin-bottom:12px}.plan-amount{font-size:24px;font-weight:700;color:#111827}.plan-period{color:#6b7280;font-size:12px}.plan-description{font-size:12px;color:#4b5563;margin-bottom:8px}.plan-features{font-size:12px;color:#374151;flex:1;margin-bottom:16px}.plan-features ul{padding-left:18px;margin:0}.plan-features li{margin-bottom:4px}.plan-card button,.btn-primary{padding:11px;background:#28284a;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:13px}.plan-card button:hover,.btn-primary:hover{background:#15152b}.staff-strip{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.staff-chip{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:10px 14px;cursor:pointer;min-width:130px;box-shadow:0 1px 2px #0000000d;text-align:left}.staff-chip:hover{border-color:#28284a}.staff-chip.active{border-color:#28284a;background:#f3f3f9}.staff-chip .chip-name{font-weight:600;font-size:12px;color:#111827}.staff-chip .chip-count{font-size:17px;font-weight:700;color:#28284a}.staff-chip .chip-role{font-size:11px;color:#6b7280}.staff-chip.unassigned .chip-count{color:#dc2626}.assign-bar{background:#fff;border:1px solid #d4d4ea;border-radius:8px;padding:14px 16px;margin-bottom:14px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}.assign-bar strong{font-size:13px}.assign-bar button{padding:8px 14px;background:#28284a;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:12px}.assign-bar button.secondary{background:#fff;color:#28284a;border:1px solid #28284a}.assign-bar button:disabled{opacity:.5;cursor:not-allowed}.team-picker{display:flex;flex-wrap:wrap;gap:8px;width:100%}.team-picker label{display:flex;align-items:center;gap:6px;background:#f3f4f6;padding:5px 10px;border-radius:8px;font-size:12px;cursor:pointer}.team-picker input{width:auto!important;min-width:0!important;flex:0!important}.badge-unassigned{background:#fee2e2;color:#991b1b}.badge-staff{background:#dcfce7;color:#166534}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:center}.filter-row input,.filter-row select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px}.assign-select{padding:5px 8px!important;font-size:12px;max-width:170px}.import-options{background:#f9fafb;border:1px dashed #d4d4ea;border-radius:8px;padding:12px 14px;margin-top:12px}.import-options label.radio{display:flex;align-items:center;gap:8px;font-size:13px;margin:6px 0;cursor:pointer}.import-options input[type=radio]{width:auto;min-width:0;flex:0}.import-summary{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}.import-summary div{background:#f3f4f6;border-radius:8px;padding:8px 14px;font-size:12px}.import-summary b{display:block;font-size:16px;color:#28284a}.alert-warn{background:#fef9c3;color:#854d0e;padding:8px 12px;border-radius:6px;font-size:12px;margin-bottom:8px}.btn-danger-solid{padding:9px 16px;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.btn-danger-solid:hover{background:#b91c1c}.lead-form h3{font-size:14px;color:#1f2937}.lead-form .field-inline input,.lead-form .field-inline select,.lead-form .field-inline textarea{width:100%;font-weight:400;color:#111827}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;z-index:1000}.modal-box{background:#fff;border-radius:8px;width:100%;max-width:560px;box-shadow:0 20px 50px #00000059}.modal-box.modal-wide{max-width:820px}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.modal-head h3{margin:0;font-size:16px;color:#111827}.modal-x{background:none;border:none;font-size:21px;line-height:1;cursor:pointer;color:#6b7280;padding:0 4px}.modal-x:hover{color:#111827}.modal-body{padding:18px 20px 20px}.record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.record-field{display:flex;flex-direction:column;gap:5px;font-size:11.5px;font-weight:600;color:#4b5563}.record-field.full{grid-column:1 / -1}.record-field.check{flex-direction:row;align-items:center;gap:8px}.record-field input:not([type=checkbox]),.record-field select,.record-field textarea{padding:9px 11px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-weight:400;color:#111827;width:100%;font-family:inherit}.record-field small{font-weight:400;color:#6b7280}.record-actions{display:flex;gap:10px;margin-top:18px}.record-actions button{padding:9px 20px;background:#28284a;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:13px}.record-actions .btn-secondary{background:#e5e7eb;color:#111827}.record-actions button:disabled{opacity:.6;cursor:not-allowed}.row-actions-cell{display:flex;gap:6px;flex-wrap:nowrap;white-space:nowrap}.row-actions-cell .btn-small{margin:0}.badge-unassigned{background:#fef3c7;color:#92400e}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;align-items:center}.filter-chip{padding:6px 14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:12px;font-weight:600;cursor:pointer}.filter-chip.on{background:#28284a;border-color:#28284a;color:#fff}.row-overdue td{background:#fef2f2}@media (max-width: 640px){.record-grid{grid-template-columns:1fr}.modal-backdrop{padding:12px 8px}}.bar-row{display:grid;grid-template-columns:minmax(90px,32%) 1fr auto;gap:10px;align-items:center;margin:8px 0;font-size:12px}.bar-label{color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{background:#e5e7eb;border-radius:6px;height:12px;overflow:hidden}.bar-fill{background:#28284a;height:100%;border-radius:6px}.bar-value{color:#111827;font-weight:600;white-space:nowrap}.plan-ticks{list-style:none;margin:0 0 16px;padding:0;font-size:12px;display:grid;gap:6px}.plan-ticks li{display:flex;gap:8px;align-items:flex-start}.plan-ticks li span{flex:none;width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;margin-top:1px}.plan-ticks li.yes span{background:#dcfce7;color:#15803d}.plan-ticks li.no{color:#9ca3af;text-decoration:line-through}.plan-ticks li.no span{background:#fee2e2;color:#b91c1c}.plan-compare{max-width:980px;margin:36px auto 10px;padding:0 16px}.plan-compare h2{margin:0 0 4px}.numbering-box{border:1px solid var(--line, #e5e7eb);border-radius:8px;padding:12px 14px;background:#28284a08}.numbering-box>span{font-weight:700;margin-bottom:8px}.cat-tree .cat-item{padding:8px 0;border-bottom:1px solid var(--line, #eceef1)}.cat-tree .cat-sub{margin:6px 0 0 18px;padding-left:12px;border-left:2px solid rgba(40,40,74,.25);display:grid;gap:6px}.alert-ok{background:#dcfce7;color:#166534;padding:8px 12px;border-radius:6px;font-size:12px;margin-bottom:10px}.dt-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-bottom:14px}.dt-type{text-align:left;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;gap:4px;color:inherit}.dt-type b{font-size:13.5px}.dt-type span{font-size:11.5px;color:#6b7280;line-height:1.35}.dt-type.on{border-color:#28284a;box-shadow:0 0 0 2px #28284a26}.dt-panel{margin-bottom:14px}.dt-panel h4{margin:14px 0 6px}.dt-dim{opacity:.55}.dt-options{margin:12px 0;display:flex;flex-direction:column;gap:8px}.dt-options select{margin-left:8px;padding:7px 10px;border:1px solid #d1d5db;border-radius:6px}.dt-actions{display:flex;flex-wrap:wrap;gap:8px}.dt-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-bottom:8px}.dt-counts div{background:#f9fafb;border-radius:8px;padding:10px;display:flex;flex-direction:column}.dt-counts b{font-size:17px}.dt-counts span{font-size:11.5px;color:#6b7280}.dt-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px}.dt-confirm input{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px}.dt-groups{display:flex;flex-direction:column;gap:8px;margin:10px 0}.dt-group{display:flex;gap:10px;align-items:flex-start;background:#fafafa;padding:8px 10px;border-radius:8px;cursor:pointer}.dt-group small{display:block;color:#6b7280;font-size:11.5px}.dt-group em{color:#6b7280;font-style:normal;font-size:11.5px}.danger-zone{border:1px solid #fecaca;margin-top:16px}.danger-zone h3{color:#b91c1c}.table-scroll{overflow-x:auto}.inv-stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}.inv-stat{display:flex;flex-direction:column;gap:4px;min-width:170px;padding:14px 18px}.inv-stat b{font-size:18px}.inv-stat.warn b{color:#dc2626}.text-danger{color:#dc2626;font-weight:600}.line-items{width:100%;border-collapse:collapse;margin:6px 0}.line-items th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;padding:6px;white-space:nowrap}.line-items td{padding:4px;vertical-align:top}.line-items input,.line-items select{width:100%;min-width:0;padding:7px 8px}.line-items .num{width:92px}.line-items .qty{width:72px}.line-items .amt{text-align:right;font-weight:600;white-space:nowrap;padding-top:12px}.inv-form-totals{margin-left:auto;min-width:260px}.inv-form-totals td{padding:3px 0}.inv-form-totals td:last-child{text-align:right;padding-left:20px}.inv-form-totals .grand td{font-weight:700;font-size:14px;border-top:1px solid #e5e7eb;padding-top:6px}.invoice-form{background:#fff;border-radius:8px;padding:18px;box-shadow:0 1px 3px #00000014;margin-bottom:16px;display:flex;flex-direction:column;gap:14px}.invoice-form .record-field textarea{width:100%}.role-chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px}.role-chip{border:1px solid #e3e3ee;background:#fff;border-radius:8px;padding:8px 14px;cursor:pointer;font-size:12px;display:flex;flex-direction:column;text-align:left;color:inherit}.role-chip small{color:#6b7280;font-size:11px}.role-chip.on{border-color:#28284a;background:#f3f3f9;box-shadow:0 0 0 2px #28284a1f}.terms-tree{display:flex;flex-direction:column;gap:10px}.terms-node{border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px;background:#fafafa}.terms-node .terms-title{font-weight:600;margin-bottom:6px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.terms-node.sub{margin-left:22px;background:#fff}.terms-node textarea{width:100%}@media (max-width: 720px){.line-items thead{display:none}.line-items,.line-items tbody,.line-items tr,.line-items td{display:block;width:100%}.line-items tr{border:1px solid #e5e7eb;border-radius:8px;padding:8px;margin-bottom:10px}.line-items .num,.line-items .qty{width:100%}.line-items .amt{text-align:left;padding-top:4px}.terms-node.sub{margin-left:10px}.inv-form-totals{width:100%}}.panel-actions button{background:#28284a;color:#fff;border:1px solid #28284a;border-radius:8px;padding:9px 16px;cursor:pointer;font-weight:600;font-size:12px}.panel-actions button.secondary{background:#fff;color:#28284a}.panel-actions button:disabled{opacity:.5;cursor:default}.pay-files{display:inline-flex;gap:6px;flex-wrap:wrap;align-items:center}.pay-file{display:inline-flex;width:38px;height:38px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#f8fafc;align-items:center;justify-content:center;text-decoration:none}.pay-file img{width:100%;height:100%;object-fit:cover}.pay-pdf{font-size:11px;font-weight:700;color:#b91c1c}.badge.pay-pending{background:#fef3c7;color:#92400e}.badge.pay-received{background:#dcfce7;color:#166534}.badge.pay-rejected,.badge.pay-failed{background:#fee2e2;color:#991b1b}.badge.pay-refunded{background:#e5e7eb;color:#374151}:root{--brand: #28284a;--brand-2: #8a46d9;--line: #e5e7eb}html{-webkit-text-size-adjust:100%}img{max-width:100%}button,input,select,textarea{font-family:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #8a46d9;outline-offset:2px}.app-shell{min-height:100vh}.sidebar{flex-shrink:0;position:sticky;top:0;height:100vh}.sidebar nav{min-height:0}.sidebar-brand{display:flex;align-items:center;justify-content:space-between}.sidebar-close,.nav-toggle,.nav-backdrop{display:none}.app-content{min-width:0}.app-content>.page{max-width:1500px;margin:0 auto}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table th{white-space:nowrap}.card-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.topbar-bell{white-space:nowrap;font-size:13px;font-weight:600}.page-header h1,.page>h1{overflow-wrap:anywhere}.page-header h3{margin:0}.panel{min-width:0}.panel h3{overflow-wrap:anywhere}.badge.status-paid{background:#dcfce7;color:#166534}.badge.status-partial{background:#fef3c7;color:#92400e}.badge.status-unpaid{background:#e8e8f3;color:#15152b}.badge.status-overdue{background:#fee2e2;color:#991b1b}.badge.status-cancelled,.badge.status-refunded{background:#f3f4f6;color:#4b5563}.title-stack{display:flex;flex-direction:column;gap:2px;min-width:0}.title-stack h1{margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.back-link{font-size:12px;color:var(--brand);font-weight:600}.pay-row{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.check-inline{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#374151;cursor:pointer}@media (max-width: 1100px){.app-content{padding:22px}.sidebar{width:210px}.two-col,.portal-grid{gap:16px}}@media (max-width: 900px){.app-shell:not(.portal-shell)>.sidebar{position:fixed;top:0;left:0;bottom:0;height:100dvh;width:280px;max-width:86vw;z-index:1100;transform:translate(-102%);transition:transform .22s ease;box-shadow:none}.app-shell.nav-open>.sidebar{transform:none;box-shadow:0 0 40px #00000073}.nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;opacity:0;pointer-events:none;transition:opacity .2s;z-index:1050}.app-shell.nav-open .nav-backdrop{opacity:1;pointer-events:auto}.app-shell:not(.portal-shell) .sidebar-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:#1f2937;color:#fff;border:0;border-radius:8px;font-size:18px;line-height:1;cursor:pointer}.nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:42px;height:40px;flex:0 0 auto;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:0 11px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:#1f2937;border-radius:2px}.app-content{padding:16px;width:100%}.topbar{margin-bottom:14px}.topbar-search{max-width:none}.two-col,.portal-grid{grid-template-columns:1fr}.page h1{font-size:18px}.portal-shell{flex-direction:column}.portal-sidebar{position:static;width:100%;height:auto;padding:8px 0 0;flex-direction:column}.portal-sidebar .sidebar-brand{padding:6px 16px 8px}.portal-sidebar nav{display:flex;overflow-x:auto;flex:none;padding:0 8px}.portal-sidebar .nav-link{white-space:nowrap;padding:10px 14px}.portal-sidebar .sidebar-footer{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-top:0;padding:10px 16px}.portal-sidebar .sidebar-footer .btn-logout{width:auto;padding:8px 16px}.portal-sidebar .portal-avatar{margin:0}.data-table:not(.stack){display:block;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.data-table:not(.stack) th,.data-table:not(.stack) td{white-space:nowrap}.landing-page{padding:32px 16px}}@media (max-width: 640px){body{font-size:13.5px}.app-content{padding:12px 12px 28px}.page h1{font-size:17px}.bell-label{display:none}.topbar-bell{padding:8px 11px;font-size:14px}.topbar-search input,input,select,textarea{font-size:14px}.page-header{flex-wrap:wrap;align-items:flex-start}.page-header>button,.page-header>a{flex:0 0 auto}.page-header input{min-width:0;width:100%}.inline-form{padding:14px;gap:10px}.inline-form input,.inline-form select,.inline-form textarea,.inline-form .field-inline,.filter-row input,.filter-row select{flex:1 1 100%;min-width:0!important;width:100%}.inline-form button,.assign-bar button{width:100%;padding:11px}.inline-form .btn-small{width:auto}.filter-row{gap:8px}.filter-chip{padding:8px 12px}.btn-small{padding:7px 12px;font-size:12px}.record-actions{flex-direction:column-reverse}.record-actions button{width:100%;padding:12px}.panel{padding:14px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{padding:12px}.stat-value{font-size:18px}.staff-strip{gap:8px}.staff-chip{min-width:calc(50% - 4px);flex:1 1 calc(50% - 4px)}.assign-select{max-width:none}.team-picker{gap:6px}.modal-box,.modal-box.modal-wide{max-width:100%}.modal-body{padding:14px}.portal-card{flex-direction:column;align-items:flex-start}.portal-row{flex-wrap:wrap}.table-wrap{background:transparent;box-shadow:none;border-radius:0;overflow:visible}.data-table.stack,.data-table.stack tbody{display:block;width:100%}.data-table.stack thead{display:none}.data-table.stack tr{display:block;background:#fff;border:1px solid var(--line);border-radius:8px;padding:4px 14px;margin:0 0 10px;box-shadow:0 1px 2px #0000000a}.data-table.stack td{display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:right;padding:9px 0;border-bottom:1px dashed #eceff3;font-size:13px;overflow-wrap:anywhere}.data-table.stack td:last-child{border-bottom:0}.data-table.stack td:before{content:attr(data-label);flex:0 0 38%;max-width:38%;text-align:left;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b7280}.data-table.stack td:empty{display:none}.data-table.stack tr.empty-row td{justify-content:center;text-align:center}.data-table.stack tr.empty-row td:before{display:none}.data-table.stack .row-actions,.data-table.stack .row-actions-cell{justify-content:flex-end;flex-wrap:wrap;white-space:normal}.row-overdue{background:#fef2f2}.day-row .day-no{max-width:none!important}.doc-toolbar{padding:12px}.doc-actions{width:100%}.doc-actions>button{flex:1 1 auto}.login-page{padding:16px;align-items:flex-start;padding-top:8vh}.login-card{width:100%;max-width:380px;padding:26px 20px}.landing-hero h1{font-size:20px}.plan-grid{gap:18px}.plan-card{width:100%;max-width:360px}.plan-card.featured{transform:none}[style*="width: 360px"]{width:92vw!important;max-width:360px}input[style*="width: 220px"]{width:100%!important}}@media (max-width: 380px){.card-grid{grid-template-columns:1fr}.staff-chip{min-width:100%;flex-basis:100%}}.doc-toolbar{background:#fff;border-radius:8px;padding:12px 16px;box-shadow:0 1px 3px #00000014;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.doc-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.doc-actions>button,.page-header .doc-actions>button{padding:9px 18px;background:var(--brand);color:#fff;border:1px solid var(--brand);border-radius:6px;font-weight:600;cursor:pointer;font-size:13px}.doc-actions>.btn-secondary,.page-header .doc-actions>.btn-secondary{background:#fff;color:var(--brand)}.doc-actions>.btn-small,.page-header .doc-actions>.btn-small{padding:6px 12px;font-size:11.5px;margin:0;border:0;color:#fff;background:#28284a}.doc-actions>.btn-small.btn-danger{background:#dc2626}.doc-actions>button:disabled{opacity:.6;cursor:wait}.doc-scroll{container-type:inline-size;background:#e8ecf2;border-radius:8px;padding:22px 14px}.doc-sheet{position:relative;overflow:hidden;display:flex;flex-direction:column;width:100%;max-width:210mm;min-height:297mm;margin:0 auto;background:#fff;border-top:6px solid var(--brand);padding:14mm 15mm 10mm;box-shadow:0 6px 24px #0f172a26;color:#1f2937}.doc-sheet.mini{min-height:0;padding:14px 18px;box-shadow:0 1px 6px #0000001f;max-width:100%}.settings-form{display:flex;flex-direction:column;gap:16px}.settings-preview{margin-top:16px}.logo-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.logo-box{width:150px;height:84px;border:1px dashed #cbd5e1;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#f8fafc;color:#94a3b8;font-size:11.5px;padding:6px}.logo-box img{max-width:100%;max-height:100%;object-fit:contain}.doc-head,.doc-foot,.invoice-sheet{font-family:var(--font)}.doc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:14px;margin-bottom:20px;border-bottom:2px solid var(--brand)}.doc-brand{display:flex;align-items:center;gap:16px;min-width:0}.doc-logo{max-height:72px;max-width:190px;object-fit:contain;flex:0 0 auto}.doc-brand-text{min-width:0}.doc-company{font-size:18px;font-weight:800;color:var(--brand);line-height:1.2;overflow-wrap:anywhere}.doc-address{font-size:12px;color:#475569;margin-top:3px;white-space:pre-line;line-height:1.45}.doc-contact{font-size:11.5px;color:#64748b;margin-top:2px;overflow-wrap:anywhere}.doc-head-right{text-align:right;flex:0 0 auto}.doc-foot{margin-top:auto;padding-top:12px;border-top:1px solid #e5e7eb;text-align:center;font-size:11px;color:#64748b;line-height:1.5}.doc-foot-text{font-weight:600;color:#334155}.letter-sheet>.doc-foot,.invoice-sheet>.doc-foot{margin-top:auto}.letter-sheet .lt-body{margin-bottom:26px}.invoice-sheet>.inv-end{margin-bottom:24px}.letter-sheet{font-family:var(--font);font-size:11.5pt;line-height:1.62}.lt-body{flex:1 0 auto}.lt-body[contenteditable]:focus{outline:2px dashed #c9a8f2;outline-offset:6px;border-radius:4px}.lt-body p{margin:0 0 11px;text-align:justify}.lt-body ul,.lt-body ol{margin:0 0 12px;padding-left:22px}.lt-body li{margin-bottom:4px}.lt-ref{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:10.5pt;color:#374151;margin-bottom:18px}.lt-to{margin-bottom:14px;line-height:1.5}.lt-subject{font-weight:700;background:#f3f3f9;border-left:4px solid var(--brand);padding:8px 12px;margin:14px 0 16px!important;text-align:left!important}.lt-title{text-align:center!important;font-weight:700;font-size:16pt;letter-spacing:.14em;color:var(--brand);margin:6px 0 4px!important}.lt-title:after{content:"";display:block;width:70px;height:3px;background:var(--brand-2);margin:8px auto 0;border-radius:2px}.lt-sub{text-align:center!important;color:#475569;margin:0 0 14px!important}.lt-heading{font-weight:700;color:var(--brand);text-transform:uppercase;letter-spacing:.06em;font-size:10pt;margin:16px 0 4px!important;text-align:left!important}.lt-table,.lt-itinerary{width:100%;border-collapse:collapse;margin:10px 0 14px;font-family:var(--font);font-size:10pt;line-height:1.4}.lt-table th,.lt-table td{border:1px solid #d5dce6;padding:6px 10px;text-align:left;vertical-align:top}.lt-table th{background:#f1f5f9;color:#475569;font-size:9pt;text-transform:uppercase;letter-spacing:.04em;width:18%;white-space:nowrap}.lt-itinerary th{background:var(--brand);color:#fff;padding:7px 8px;text-align:left;font-size:9pt;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--brand)}.lt-itinerary td{border:1px solid #d5dce6;padding:6px 8px;vertical-align:top}.lt-itinerary tbody tr:nth-child(2n) td{background:#f8fafc}.lt-itinerary .c{text-align:center;width:44px;font-weight:700}.lt-box{border:1px solid #cbd5e1;border-left:4px solid var(--brand);background:#f8fafc;border-radius:6px;padding:10px 14px;margin:14px 0;font-family:var(--font);font-size:10.5pt}.lt-box .lt-table{margin-bottom:4px;background:#fff}.lt-box p{font-family:var(--font)}.lt-sign{margin-top:26px;break-inside:avoid}.lt-sign p{margin-bottom:0}.lt-sign-space{height:46px}.lt-stamp{display:inline-block;margin-top:12px;border:1px dashed #94a3b8;padding:14px 28px;color:#94a3b8;font-size:9pt;font-family:var(--font)}.lt-enclosures{margin-top:22px;padding-top:8px;border-top:1px dashed #cbd5e1;font-size:10pt;color:#4b5563}.lt-note{font-style:italic;color:#64748b;font-size:10pt;text-align:left!important}.lt-approval{margin-top:24px}.lt-approval-sign{display:flex;justify-content:space-between;gap:16px;margin-top:38px;font-size:9.5pt;color:#64748b}.lt-approval-sign span{flex:1;border-top:1px solid #64748b;padding-top:4px;text-align:center}.lt-blank{background:#fde68a;color:#92400e;border-radius:3px;padding:0 4px;font-family:var(--font);font-size:.88em}.template-form .record-grid{margin-bottom:8px}.var-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:10px 0 4px}.chip{border:1px solid #d4d4ea;background:#f3f3f9;color:#15152b;border-radius:8px;padding:3px 10px;font-size:11.5px;cursor:pointer}.chip:hover{background:#e8e8f3}.tabs-mini{display:flex;gap:4px;margin-bottom:8px}.tabs-mini button{padding:6px 16px;border:1px solid #d1d5db;background:#fff;border-radius:6px;cursor:pointer;font-weight:600;color:#374151}.tabs-mini button.on{background:var(--brand);border-color:var(--brand);color:#fff}.template-body{width:100%;font-family:ui-monospace,Consolas,Menlo,monospace;font-size:12px;line-height:1.5;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;resize:vertical;min-height:280px}.preview-sheet{min-height:0}.invoice-sheet{font-size:12px;line-height:1.5}.inv-titlebox{text-align:right}.inv-title{font-size:22px;font-weight:800;letter-spacing:.07em;color:var(--brand);line-height:1}.inv-meta{margin:10px 0 0 auto;border-collapse:collapse;font-size:12px}.inv-meta th{color:#6b7280;font-weight:600;text-align:left;padding:2px 14px 2px 0}.inv-meta td{text-align:right;font-weight:600;padding:2px 0}.inv-status{display:inline-block;padding:1px 10px;border-radius:8px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#e8e8f3;color:#15152b}.inv-status.status-paid{background:#dcfce7;color:#166534}.inv-status.status-partial{background:#fef3c7;color:#92400e}.inv-status.status-overdue{background:#fee2e2;color:#991b1b}.inv-status.status-cancelled,.inv-status.status-refunded{background:#f3f4f6;color:#4b5563}.inv-parties{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:4px 0 20px}.inv-party{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;line-height:1.6;overflow-wrap:anywhere}.inv-label{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#64748b;margin-bottom:4px}.inv-name{font-weight:700;font-size:13.5px;color:#0f172a}.inv-items{width:100%;border-collapse:collapse;margin-top:4px}.inv-items th{background:var(--brand);color:#fff;text-align:left;padding:9px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.inv-items td{padding:10px 12px;border-bottom:1px solid #e5e7eb}.inv-items .c{text-align:center;width:48px}.inv-items .r{text-align:right}.inv-items.small{font-size:11.5px;margin-top:4px}.inv-items.small th{background:#334155;padding:7px 10px}.inv-items.small td{padding:7px 10px}.inv-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-top:14px}.inv-notes{flex:1;min-width:0;font-size:12px;color:#475569}.inv-notes p{margin:0 0 10px}.pre{white-space:pre-line}.inv-totals{width:300px;flex:0 0 auto;border-collapse:collapse}.inv-totals td{padding:6px 12px}.inv-totals td:last-child{text-align:right;font-weight:600;white-space:nowrap}.inv-totals .grand td{background:#f3f3f9;font-weight:800;font-size:13.5px;color:var(--brand);border-top:2px solid var(--brand)}.inv-totals .due td{font-weight:800;font-size:13px;color:#b91c1c;border-top:1px solid #cbd5e1}.inv-totals .due.settled td{color:#15803d}.inv-payments{margin-top:18px}.inv-end{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:28px}.inv-terms{flex:1;min-width:0;font-size:11px;color:#475569}.inv-terms p{margin:0}.inv-sign{width:220px;flex:0 0 auto;text-align:center;font-size:11.5px}.inv-sign-space{height:48px}.inv-sign-line{border-top:1px solid #334155;padding-top:6px;font-weight:700}.inv-stamp{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%) rotate(-18deg);font-size:64px;font-weight:900;letter-spacing:.08em;border:9px solid currentColor;padding:0 28px;border-radius:8px;opacity:.08;pointer-events:none;white-space:nowrap;z-index:0}.stamp-paid{color:#15803d}.stamp-cancelled,.stamp-refunded{color:#dc2626}.invoice-sheet>*:not(.inv-stamp){position:relative;z-index:1}@container (max-width: 640px){.doc-sheet{min-height:0;padding:18px 16px 14px}.doc-head{flex-direction:column;gap:14px}.doc-brand{flex-wrap:wrap;gap:10px}.doc-head-right,.inv-titlebox{text-align:left}.inv-meta{margin-left:0}.inv-title{font-size:18px}.inv-parties{grid-template-columns:1fr}.inv-bottom,.inv-end{flex-direction:column;align-items:stretch}.inv-totals{width:100%}.inv-sign{width:100%;text-align:left;margin-top:8px}.inv-stamp{font-size:36px;border-width:5px}.invoice-sheet .inv-items{font-size:11.5px}.inv-items.small{display:block;overflow-x:auto}.inv-items.small th,.inv-items.small td{white-space:nowrap}.letter-sheet{font-size:11pt}.lt-body p{text-align:left}.lt-table th{width:auto;white-space:normal}.lt-table,.lt-itinerary{display:block;overflow-x:auto}.lt-itinerary th,.lt-itinerary td{white-space:nowrap}}@media (max-width: 640px){.doc-scroll{padding:8px 4px;border-radius:8px}}.pdf-host{position:fixed;left:-10000px;top:0;width:794px;background:#fff;z-index:-1}.doc-sheet.pdf-mode{width:794px;max-width:none;min-height:0;margin:0;box-shadow:none;padding:6mm 14mm 2mm;border-top-width:6px}.doc-sheet.pdf-mode .lt-blank{background:transparent}@page{size:A4;margin:12mm}@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}html,body{background:#fff!important;height:auto!important;font-size:12pt}.sidebar,.topbar,.trial-banner,.nav-backdrop,.no-print,.nav-toggle{display:none!important}.app-shell{display:block!important;min-height:0!important}.app-content{display:block!important;padding:0!important;overflow:visible!important;width:auto!important}.app-content>.page,.page{max-width:none!important;margin:0!important;padding:0!important}body.printing-one .doc-sheet:not(.print-me){display:none!important}.doc-scroll{padding:0!important;background:none!important;border-radius:0!important;container-type:normal!important;overflow:visible!important}.doc-sheet{box-shadow:none!important;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;border-top-width:5px;overflow:visible!important;display:block!important}.doc-sheet .doc-foot{margin-top:24px}.lt-body[contenteditable]:focus{outline:none!important}.lt-blank{background:transparent!important;color:#000!important}.doc-head,.lt-sign,.lt-box,.inv-parties,.inv-totals,.inv-end,.inv-payments,.doc-foot,.avoid-break,tr,img{break-inside:avoid;page-break-inside:avoid}thead{display:table-header-group}.inv-stamp{opacity:.09}.lt-table,.lt-itinerary,.inv-items.small{display:table!important;overflow:visible!important}}.pdf-mode .lt-body,.pdf-mode .inv-end{margin-bottom:6px}.pdf-mode .doc-foot{margin-top:10px;padding-top:8px}.pdf-mode .inv-end{margin-top:16px}.pdf-mode .inv-sign-space,.pdf-mode .lt-sign-space{height:34px}.pdf-mode .inv-items td{padding:8px 12px}.pdf-mode .doc-head{margin-bottom:14px;padding-bottom:10px}@media print{.doc-sheet .lt-body,.doc-sheet .inv-end{margin-bottom:4px!important}.doc-sheet .doc-foot{margin-top:10px!important;padding-top:8px}.doc-sheet .inv-end{margin-top:16px}.inv-sign-space,.lt-sign-space{height:34px}.inv-items td{padding:8px 12px}.doc-head{margin-bottom:14px;padding-bottom:10px}}.doc-sheet.pdf-mode{display:block;height:auto;overflow:visible}.pa-page{padding:24px;max-width:1200px;margin:0 auto}.pa-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.pa-header h1{margin:0;font-size:20px;color:#111827}.pa-header-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pa-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px;border-bottom:1px solid #e5e7eb}.pa-tab{background:none;border:none;border-bottom:3px solid transparent;padding:10px 16px;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;margin-bottom:-1px;font-family:inherit}.pa-tab:hover{color:#28284a}.pa-tab.on{color:#28284a;border-bottom-color:#28284a}.pa-page input:not([type=checkbox]):not([type=radio]),.pa-page select,.pa-page textarea{width:100%;padding:9px 12px;border:1px solid #d1d5db;border-radius:8px;background:#fff;font:inherit;font-size:13px;color:#111827;line-height:1.35;min-height:40px}.pa-page input:focus,.pa-page select:focus,.pa-page textarea:focus{outline:none;border-color:#28284a;box-shadow:0 0 0 3px #28284a26}.pa-page input[type=checkbox],.pa-page input[type=radio]{width:16px;height:16px;margin:0;accent-color:#28284a;flex:0 0 auto}.pa-page label{display:block;font-size:11.5px;font-weight:600;color:#4b5563;margin-bottom:5px}.pa-page label.pa-check{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:#374151;margin:0}.pa-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#1f2937;font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;min-height:40px}.pa-btn:hover{background:#f3f4f6}.pa-btn.primary{background:#28284a;border-color:#28284a;color:#fff}.pa-btn.primary:hover{background:#15152b}.pa-btn.danger{background:#fff;border-color:#fca5a5;color:#b91c1c}.pa-btn.danger:hover{background:#fee2e2}.pa-btn.small{padding:5px 12px;font-size:11.5px;min-height:30px;border-radius:6px}.pa-btn:disabled{opacity:.6;cursor:not-allowed}.pa-form{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:18px;margin-bottom:20px;box-shadow:0 1px 3px #0000000d}.pa-form h3{margin:0 0 14px;font-size:15px}.pa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;align-items:end}.pa-grid .pa-span{grid-column:1 / -1}.pa-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;align-items:center}.pa-checks{display:flex;gap:22px;flex-wrap:wrap;margin-top:14px}.pa-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.pa-toolbar p{margin:0}.pa-table-wrap{background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;overflow-x:auto}.pa-table-wrap .data-table{min-width:760px}.pa-table-wrap select{width:auto;min-width:150px;padding:6px 10px;min-height:34px}.pa-cell-actions{display:flex;gap:6px;flex-wrap:wrap}.pa-bell{position:relative}.pa-bell-panel{position:absolute;right:0;top:110%;background:#fff;border:1px solid #e5e7eb;border-radius:8px;width:360px;max-width:calc(100vw - 32px);max-height:420px;overflow-y:auto;z-index:20;box-shadow:0 10px 28px #00000024}.pa-bell-panel a{color:#28284a;font-size:11.5px;font-weight:600}.pa-form .ck-editor__editable{min-height:140px}@media (max-width: 640px){.pa-page{padding:14px}.pa-header h1{font-size:17px}.pa-tab{padding:9px 12px}.pa-grid{grid-template-columns:1fr}.pa-btn{min-height:42px}}.pa-features{border:1px solid #e5e7eb;border-radius:8px;padding:14px;background:#fafafa}.pa-features-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}.pa-feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.pa-page label.pa-feature,.pa-feature{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;margin:0;font-weight:500}.pa-feature input{margin-top:3px;width:16px;height:16px;flex:none}.pa-feature span{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#111827}.pa-feature small{color:#6b7280;font-size:11px;font-weight:400;line-height:1.35}.pa-feature.on{border-color:#28284a;background:#f3f3f9}.fm-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.fm-table{width:100%;border-collapse:collapse;min-width:560px;font-size:13px}.fm-table th,.fm-table td{padding:11px 14px;border-bottom:1px solid #f0f1f3;text-align:center;vertical-align:middle}.fm-table thead th{background:#f9fafb;font-weight:700;color:#111827;position:sticky;top:0}.fm-table thead th.hot{background:#28284a;color:#fff}.fm-table thead th small{display:block;font-weight:500;opacity:.8;font-size:11.5px}.fm-table tbody th{text-align:left;font-weight:600;color:#1f2937}.fm-table tbody th small{display:block;font-weight:400;color:#6b7280;font-size:11.5px;margin-top:2px}.fm-table td.yes span{display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;background:#dcfce7;color:#15803d;font-weight:800}.fm-table td.no span{display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;background:#fee2e2;color:#b91c1c;font-weight:800;font-size:11.5px}.fm-table tr.same th{color:#6b7280;font-weight:500}.fm-table td.num{font-weight:600;color:#374151}.cal{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 3px #00000014}.cal-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.cal-title{flex:1;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:15px;color:#111827}.cal-nav{width:34px;height:34px;border-radius:8px;border:1px solid #d1d5db;background:#fff;font-size:17px;line-height:1;cursor:pointer;color:#28284a}.cal-nav:hover,.cal-today:hover{background:#f3f3f9}.cal-today{height:34px;padding:0 14px;border-radius:8px;border:1px solid #28284a;background:#fff;color:#28284a;font-weight:600;font-size:12px;cursor:pointer}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-weekdays{margin-bottom:4px}.cal-weekdays div{text-align:center;font-size:11px;font-weight:700;text-transform:uppercase;color:#6b7280;padding:4px 0}.cal-day{position:relative;min-height:104px;border:1px solid #eef0f4;border-radius:8px;padding:6px;background:#fff;cursor:pointer;overflow:hidden}.cal-day:hover{border-color:#d4d4ea;background:#f9f9fc}.cal-day.other{background:#f9fafb}.cal-day.other .cal-num{color:#b6bcc7}.cal-day.today{border-color:#28284a}.cal-day.today .cal-num{background:#28284a;color:#fff}.cal-day.selected{background:#f3f3f9;border-color:#28284a;box-shadow:0 0 0 2px #28284a2e}.cal-day.disabled{opacity:.4;cursor:not-allowed}.cal-num{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:8px;font-size:12px;font-weight:600;color:#1f2937;padding:0 4px}.cal-events{display:flex;flex-direction:column;gap:3px;margin-top:4px}.cal-chip{text-align:left;border:none;border-left:3px solid;border-radius:4px;padding:2px 6px;font-size:11px;line-height:1.3;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:inherit}.cal-more{font-size:11px;color:#6b7280;padding-left:4px}.cal-chip.cal-scheduled,.cal-dots i.cal-scheduled,.cal-legend i.cal-scheduled{background:#e8e8f3;color:#15152b;border-color:#28284a}.cal-chip.cal-completed,.cal-dots i.cal-completed,.cal-legend i.cal-completed{background:#dcfce7;color:#166534;border-color:#16a34a}.cal-chip.cal-missed,.cal-dots i.cal-missed,.cal-legend i.cal-missed{background:#fef3c7;color:#92400e;border-color:#d97706}.cal-chip.cal-cancelled,.cal-dots i.cal-cancelled,.cal-legend i.cal-cancelled{background:#f3f4f6;color:#6b7280;border-color:#9ca3af;text-decoration:line-through}.cal-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px;font-size:11.5px;color:#4b5563}.cal-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px;border-left:0}.cal-legend i.cal-scheduled{background:#28284a}.cal-legend i.cal-completed{background:#16a34a}.cal-legend i.cal-missed{background:#d97706}.cal-legend i.cal-cancelled{background:#9ca3af}.cal-compact{box-shadow:none;border:1px solid #e5e7eb;padding:10px;max-width:340px}.cal-compact .cal-title{font-size:13px}.cal-compact .cal-nav{width:30px;height:30px}.cal-compact .cal-today{height:30px;padding:0 10px}.cal-compact .cal-day{min-height:40px;padding:3px;display:flex;flex-direction:column;align-items:center;gap:2px}.cal-compact .cal-num{font-size:11.5px}.cal-dots{display:flex;gap:2px}.cal-dots i{width:6px;height:6px;border-radius:50%;border:0}.cal-dots i.cal-scheduled{background:#28284a}.cal-dots i.cal-completed{background:#16a34a}.cal-dots i.cal-missed{background:#d97706}.cal-dots i.cal-cancelled{background:#9ca3af}.cal-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}.cal-side h3{margin:0 0 4px;font-size:14px}.cal-item{border:1px solid #e5e7eb;border-left:4px solid #28284a;border-radius:8px;padding:10px 12px;margin-top:10px;background:#fff}.cal-item.cal-completed{border-left-color:#16a34a}.cal-item.cal-missed{border-left-color:#d97706}.cal-item.cal-cancelled{border-left-color:#9ca3af;opacity:.75}.cal-item strong{display:block;font-size:13px}.cal-item .muted{display:block}.view-toggle{display:inline-flex;border:1px solid #28284a;border-radius:8px;overflow:hidden}.view-toggle button{padding:8px 16px;background:#fff;color:#28284a;border:none;font-weight:600;cursor:pointer;font-size:13px}.view-toggle button.on{background:#28284a;color:#fff}.appt-date-field{display:flex;flex-direction:column;gap:8px;flex-basis:100%}.appt-date-field label{font-size:11.5px;font-weight:600;color:#4b5563}.appt-date-row{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}.appt-date-row .picked{display:flex;flex-direction:column;gap:8px;min-width:200px}@media (max-width: 900px){.cal-layout{grid-template-columns:1fr}}@media (max-width: 640px){.cal{padding:10px}.cal-grid{gap:2px}.cal-day{min-height:58px;padding:3px}.cal-chip{font-size:0;padding:0;height:6px;border-left-width:0;border-radius:3px}.cal-chip b{display:none}.cal-events{flex-direction:row;flex-wrap:wrap;gap:2px}.cal-more{font-size:10px;padding:0}}@media (max-width: 640px){.cal-chip{min-width:14px;flex:1 1 14px}}.cal button.cal-nav{width:34px;height:34px;padding:0;margin:0;background:#fff;color:#28284a;border:1px solid #d1d5db;border-radius:8px;font-weight:400}.cal button.cal-today{height:34px;padding:0 14px;background:#fff;color:#28284a;border:1px solid #28284a;border-radius:8px;font-weight:600}.cal button.cal-nav:hover,.cal button.cal-today:hover{background:#f3f3f9}.cal-compact button.cal-nav{width:30px;height:30px}.cal-compact button.cal-today{height:30px;padding:0 10px}.cal button.cal-chip{padding:2px 6px;margin:0;font-weight:400;border-radius:4px}@media (max-width: 640px){.cal button.cal-chip{padding:0}}.tone-chip{display:inline-block;padding:2px 9px;border-radius:8px;font-size:11.5px;font-weight:600;background:#f3f4f6;color:#4b5563;white-space:nowrap}.tone-chip.ok{background:#dcfce7;color:#166534}.tone-chip.warn{background:#fef3c7;color:#92400e}.tone-chip.bad{background:#fee2e2;color:#991b1b}.tone-chip.info{background:#e8e8f3;color:#15152b}.tone-chip.faint{background:#f9fafb;color:#9ca3af}.staff-cell{display:flex;align-items:center;gap:10px}.staff-cell small,.kv span{display:block;color:#6b7280;font-size:11.5px}.staff-ph{width:36px;height:36px;border-radius:50%;background:#28284a;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;object-fit:cover;flex-shrink:0}.staff-hero{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:10px 0 16px}.staff-hero-main{flex:1;min-width:200px}.staff-hero-main h1{margin:0 0 4px;font-size:18px}.staff-hero-main p{margin:2px 0}.staff-photo{width:84px;height:84px;border-radius:50%;border:0;background:#28284a;color:#fff;font-size:22px;font-weight:700;overflow:hidden;cursor:pointer;padding:0}.staff-photo img{width:100%;height:100%;object-fit:cover}.kv{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #f1f5f9;font-size:13px}.kv:last-child{border-bottom:0}.kv b{text-align:right;font-weight:600;overflow-wrap:anywhere}.form-sec{margin:16px 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#28284a;border-bottom:1px solid #e5e7eb;padding-bottom:4px}.form-sec:first-of-type{margin-top:0}.monthbar{display:inline-flex;align-items:center;gap:12px;margin:6px 0}.monthbar button{border:1px solid #d1d5db;background:#fff;border-radius:6px;width:32px;height:32px;font-size:16px;cursor:pointer}.monthbar button:disabled{opacity:.4;cursor:default}.daygrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px;margin:6px 0}.daygrid .day{border:1px solid #e5e7eb;background:#fff;border-radius:8px;padding:6px 2px;display:flex;flex-direction:column;align-items:center;cursor:pointer;font-family:inherit}.daygrid .day small{font-size:10px;color:inherit}.daygrid .day.ok{background:#dcfce7;color:#166534}.daygrid .day.warn{background:#fef3c7;color:#92400e}.daygrid .day.bad{background:#fee2e2;color:#991b1b}.daygrid .day.info{background:#e8e8f3;color:#15152b}.daygrid .day.muted,.daygrid .day.faint{background:#f9fafb;color:#9ca3af}.trail{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:8px 12px;margin-top:12px}.trail ul{margin:4px 0 0;padding-left:18px}.dayrow{display:flex;flex-wrap:wrap;gap:10px}.rank{display:inline-flex;width:26px;height:26px;border-radius:50%;align-items:center;justify-content:center;background:#e5e7eb;font-weight:700;font-size:11.5px}.rank.r1{background:#fde68a;color:#78350f}.rank.r2{background:#e5e7eb;color:#374151}.rank.r3{background:#fdba74;color:#7c2d12}.good{color:#166534}.badtxt{color:#991b1b}.payslip-actions{display:flex;gap:8px;margin-bottom:12px}.payslip{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:24px;max-width:800px;margin:0 auto;color:#111827}.ps-head{display:flex;gap:14px;align-items:center;border-bottom:2px solid #28284a;padding-bottom:12px}.ps-head img{height:48px}.ps-head h2{margin:0;font-size:16px}.ps-head p{margin:2px 0 0;font-size:11.5px;color:#6b7280}.ps-title{margin-left:auto;text-align:right}.ps-title b{display:block;font-size:16px;color:#28284a}.ps-emp{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 24px;margin:14px 0;font-size:12px}.ps-emp span{display:block;color:#6b7280;font-size:11px}.ps-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ps-cols table{width:100%;border-collapse:collapse;font-size:12px}.ps-cols th,.ps-cols td{border:1px solid #e5e7eb;padding:6px 8px;text-align:left}.ps-cols td:last-child,.ps-cols th:last-child{text-align:right}.ps-cols th{background:#f3f4f6}.ps-cols .tot td{font-weight:700;background:#f9fafb}.ps-net{display:flex;justify-content:space-between;margin-top:14px;padding:12px 14px;background:#28284a;color:#fff;border-radius:8px;font-size:14px}.ps-foot{font-size:11px;color:#6b7280;margin-top:12px}@media (max-width: 640px){.ps-cols,.ps-emp{grid-template-columns:1fr}.staff-hero{flex-direction:column;align-items:flex-start}}.sp-shell{min-height:100vh;min-height:100dvh;background:#f1f5f9;display:flex;flex-direction:column;color:#0f172a}.sp-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:10px 14px;background:#28284a;color:#fff}.sp-avatar{width:38px;height:38px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:#28284a;color:#fff;font-weight:700;overflow:hidden;padding:0;cursor:pointer;flex-shrink:0}.sp-avatar img{width:100%;height:100%;object-fit:cover}.sp-top-title{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}.sp-top-title span{font-size:11.5px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-bell{position:relative;background:#ffffff26;border:0;color:#fff;border-radius:8px;width:40px;height:38px;font-size:16px;cursor:pointer}.sp-bell b{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:10px;border-radius:8px;padding:1px 5px}.sp-out{background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:8px;padding:7px 10px;font-size:11.5px;cursor:pointer}.sp-main{flex:1;width:100%;max-width:640px;margin:0 auto;padding:14px 14px 96px}.sp-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;background:#fff;border-top:1px solid #e2e8f0;padding-bottom:env(safe-area-inset-bottom)}.sp-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px;font-size:11px;color:#64748b;text-decoration:none;font-weight:600}.sp-nav-item span{font-size:17px}.sp-nav-item.on{color:#28284a;background:#f3f3f9}.sp-card{background:#fff;border-radius:8px;padding:14px;margin-bottom:12px;box-shadow:0 1px 3px #0f172a14}.sp-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.sp-card-head h3{margin:0;font-size:13.5px}.sp-card-head a{font-size:12px;font-weight:600;color:#28284a}.sp-punch-head{display:flex;justify-content:space-between;gap:10px}.sp-date{font-size:12px;color:#64748b}.sp-state{font-size:17px;font-weight:800;margin:2px 0}.sp-shift{font-size:11.5px;color:#64748b}.tone-ok{color:#166534}.tone-warn{color:#b45309}.tone-info{color:#15152b}.tone-muted{color:#475569}.sp-worked{text-align:right}.sp-worked b{display:block;font-size:18px}.sp-worked span{font-size:11.5px;color:#64748b}.sp-geo{margin:12px 0;padding:10px 12px;border-radius:8px;font-size:12px;font-weight:600}.sp-geo small{display:block;font-weight:400;opacity:.8}.sp-geo.in{background:#dcfce7;color:#166534}.sp-geo.out{background:#fee2e2;color:#991b1b}.sp-geo.wait{background:#f1f5f9;color:#475569}.sp-msg{padding:10px 12px;border-radius:8px;font-size:12px;margin:10px 0}.sp-msg.ok{background:#dcfce7;color:#166534}.sp-msg.bad{background:#fee2e2;color:#991b1b}.sp-msg.warn{background:#fef3c7;color:#92400e}.sp-msg.info{background:#e8e8f3;color:#15152b}.sp-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.sp-big{flex:1 1 140px;min-height:52px;border:0;border-radius:8px;font-size:15px;font-weight:800;color:#fff;cursor:pointer;background:#28284a}.sp-big:disabled{opacity:.45;cursor:not-allowed}.sp-sec{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;font-family:inherit}.sp-sec.ok{background:#16a34a;border-color:#16a34a;color:#fff}.sp-sec.danger{color:#b91c1c;border-color:#fca5a5}.sp-sec.full{width:100%;margin-bottom:12px}.sp-sec:disabled{opacity:.5}.sp-break-note{font-size:11.5px;color:#64748b;margin-top:8px}.sp-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.sp-tile{background:#fff;border-radius:8px;padding:10px 4px;text-align:center;text-decoration:none;color:inherit;box-shadow:0 1px 3px #0f172a14}.sp-tile b{display:block;font-size:18px}.sp-tile span{font-size:11px;color:#64748b}.sp-tile.alert b{color:#dc2626}.sp-list{list-style:none;margin:0;padding:0}.sp-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f1f5f9}.sp-list li:last-child{border-bottom:0}.sp-list li.col{flex-direction:column;align-items:stretch;gap:4px}.sp-list .row{display:flex;justify-content:space-between;gap:8px;align-items:center}.sp-list small{display:block;color:#64748b;font-size:11.5px}.sp-list small.note{color:#334155;background:#f8fafc;padding:4px 8px;border-radius:6px}.sp-right{text-align:right}.sp-list li.notif.read{opacity:.55}.sp-list li.notif{cursor:pointer}.sp-pill{padding:2px 9px;border-radius:8px;font-size:11px;font-weight:700;background:#e2e8f0;color:#334155;white-space:nowrap}.sp-pill.ok{background:#dcfce7;color:#166534}.sp-pill.warn{background:#fef3c7;color:#92400e}.sp-pill.bad{background:#fee2e2;color:#991b1b}.sp-pill.info{background:#e8e8f3;color:#15152b}.sp-pill.faint{background:#f1f5f9;color:#94a3b8}.sp-dot{width:10px;height:10px;border-radius:50%;background:#28284a;flex-shrink:0}.sp-dot.bad{background:#ef4444}.sp-dot.warn{background:#f59e0b}.sp-dot.ok{background:#22c55e}.sp-row-actions{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.sp-bal{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px}.sp-bal div{background:#f8fafc;border-radius:8px;padding:8px;text-align:center}.sp-bal b{display:block;font-size:17px}.sp-bal span,.sp-bal small{display:block;font-size:11px;color:#64748b}.sp-holidays{font-size:12px;margin:8px 0 0}.sp-monthbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sp-monthbar button{width:42px;height:38px;border:1px solid #cbd5e1;background:#fff;border-radius:8px;font-size:17px;cursor:pointer}.sp-monthbar button:disabled{opacity:.4}.sp-center{text-align:center}.sp-seg{display:flex;background:#e2e8f0;border-radius:8px;padding:3px;margin-bottom:10px}.sp-seg button{flex:1;border:0;background:transparent;padding:9px;border-radius:8px;font-weight:700;font-size:13px;cursor:pointer;color:#475569}.sp-seg button.on{background:#fff;color:#28284a;box-shadow:0 1px 2px #0000001a}.sp-chips{display:flex;gap:8px;margin-bottom:10px}.sp-chips button{border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:600;cursor:pointer}.sp-chips button.on{background:#28284a;color:#fff;border-color:#28284a}.sp-form{display:flex;flex-direction:column;gap:10px}.sp-form label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;font-weight:600;color:#475569}.sp-form label.check{flex-direction:row;align-items:center;gap:8px;font-size:13px}.sp-form .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sp-form input:not([type=checkbox]),.sp-form select,.sp-form textarea{padding:11px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px;font-family:inherit;width:100%;box-sizing:border-box}.sp-hint{font-size:11.5px;color:#64748b;margin:8px 0 0}.sp-me{text-align:center}.sp-me h2{margin:8px 0 2px;font-size:17px}.sp-photo{position:relative;width:96px;height:96px;border-radius:50%;border:0;background:#28284a;color:#fff;font-size:24px;font-weight:700;overflow:hidden;cursor:pointer;padding:0}.sp-photo img{width:100%;height:100%;object-fit:cover}.sp-photo i{position:absolute;left:0;right:0;bottom:0;background:#0000008c;font-size:11px;font-style:normal;padding:3px 0}.sp-kv{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #f1f5f9;font-size:13px}.sp-kv span{color:#64748b}.sp-kv b{text-align:right;font-weight:600;overflow-wrap:anywhere}.sp-links{display:flex;flex-direction:column;gap:4px}.sp-links a{padding:12px 4px;font-weight:600;color:#28284a;text-decoration:none;border-bottom:1px solid #f1f5f9}.sp-links a:last-child{border-bottom:0}.sp-prog{margin-bottom:12px}.sp-prog .top{display:flex;justify-content:space-between;font-size:12px;margin-bottom:4px}.sp-prog .bar{height:8px;background:#e2e8f0;border-radius:6px;overflow:hidden}.sp-prog .bar i{display:block;height:100%;background:#28284a}.sp-prog .bar i.ok{background:#16a34a}.sp-login{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:16px;background:linear-gradient(160deg,#28284a,#8a46d9)}.sp-login-card{background:#fff;border-radius:8px;padding:24px 20px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:8px;box-shadow:0 20px 50px #0000004d}.sp-login-card h1{margin:0;font-size:20px}.sp-login-badge{font-size:28px}.sp-sub{margin:0 0 6px;color:#64748b;font-size:13px}.sp-login-card label{font-size:11.5px;font-weight:600;color:#475569}.sp-login-card input{padding:12px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px}.sp-login-card button{margin-top:8px;min-height:48px;border:0;border-radius:8px;background:#28284a;color:#fff;font-size:14px;font-weight:700;cursor:pointer}.sp-login-card button:disabled{opacity:.6}.sp-login-card .sp-hint{text-align:center}@media (min-width: 900px){.sp-main{padding-top:24px}.sp-nav{max-width:640px;margin:0 auto;left:0;right:0;border-radius:8px 8px 0 0;border:1px solid #e2e8f0}}@media print{.sp-top,.sp-nav,.payslip-actions{display:none!important}}.sp-embed{width:100%;max-width:760px;margin:0 auto;padding:4px 0 32px;color:#0f172a}.sp-embed-title{margin:0 0 14px;font-size:18px}.sp-shot{display:flex;gap:12px;align-items:center;margin:12px 0;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.sp-shot img,.sp-shot-empty{width:76px;height:76px;border-radius:8px;object-fit:cover;background:#e2e8f0;display:flex;align-items:center;justify-content:center;font-size:24px;flex:none}.sp-shot small{display:block;color:#64748b;margin:2px 0 8px}.cam-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172abf;display:flex;align-items:center;justify-content:center;padding:12px}.cam-box{background:#fff;border-radius:8px;padding:16px;width:100%;max-width:420px;display:flex;flex-direction:column;gap:10px}.cam-box h3{margin:0}.cam-video{width:100%;border-radius:8px;background:#0f172a;aspect-ratio:1 / 1;object-fit:cover;transform:scaleX(-1)}.cam-actions{display:flex;gap:10px;flex-wrap:wrap}.cam-actions .sp-big{flex:1 1 160px}.cam-file{display:block;text-align:center;cursor:pointer}.att-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;vertical-align:middle;border:1px solid #cbd5e1}.sp-form .sp-big,.sp-form button.sp-big{flex:none;width:100%;height:auto;min-height:48px}.sp-big.in,.sp-form .sp-big.in{background:#28284a}.sp-actions .sp-big.in{background:#16a34a}.sp-embed{max-width:820px}.sp-card{border-radius:8px}.sp-tile{display:block}.sp-geo.warn{background:#fef3c7;color:#92400e}.sp-geo .btn-small{margin-left:6px}.cam-stage{position:relative}.cam-stage .cam-video.back,.cam-still{transform:none}.cam-guide{position:absolute;top:12%;right:18%;bottom:12%;left:18%;border:2px dashed rgba(255,255,255,.75);border-radius:50%;pointer-events:none}.cam-tip{color:#64748b;text-align:center}.cam-box{max-height:96vh;overflow:auto}.sp-list li{gap:10px}.sp-list li>div:first-child{min-width:0}.sp-monthbar button{min-width:44px;min-height:40px}@media (max-width: 640px){.sp-embed{max-width:none;padding:0 0 88px}.sp-embed-title{font-size:17px;margin-bottom:10px}.sp-card{padding:14px 12px;margin-bottom:12px}.sp-tiles{grid-template-columns:repeat(2,1fr);gap:10px}.sp-tile{padding:14px 8px}.sp-tile b{font-size:22px}.sp-actions{position:sticky;bottom:calc(66px + env(safe-area-inset-bottom,0px));z-index:5;background:#fff;padding:10px;margin:12px -12px -14px;border-top:1px solid #e2e8f0;border-radius:0 0 8px 8px;box-shadow:0 -6px 14px #0f172a0f}.sp-big{min-height:54px;font-size:16px}.sp-sec{min-height:46px}.sp-form .two{grid-template-columns:1fr}.sp-form input:not([type=checkbox]),.sp-form select,.sp-form textarea{font-size:16px;min-height:46px}.sp-bal{grid-template-columns:repeat(2,1fr)}.sp-list li{padding:12px 2px}.cam-backdrop{padding:0;align-items:flex-end}.cam-box{max-width:none;border-radius:12px 12px 0 0;padding:14px}.cam-actions .sp-big,.cam-actions .sp-sec{flex:1 1 100%}}.page-loading{padding:40px 16px;text-align:center;color:#64748b;font-size:13px}.dash{max-width:1500px}.dash-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:18px}.dash-head h1{margin:0 0 2px;font-size:21px;letter-spacing:-.3px}.dash-head p{margin:0;font-size:12px}.scope-pill{font-size:11.5px;font-weight:600;padding:6px 12px;border-radius:8px}.scope-pill.all{background:#f3f3f9;color:#28284a}.scope-pill.mine{background:#ecfdf5;color:#047857}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}@media (max-width: 1000px) and (min-width: 761px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.kpi{position:relative;display:block;background:#fff;border-radius:8px;padding:16px 16px 12px;box-shadow:0 1px 2px #0f172a0d,0 6px 18px #0f172a0d;color:inherit;text-decoration:none;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}a.kpi:hover{transform:translateY(-2px);box-shadow:0 10px 26px #0f172a1a}.kpi-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#64748b}.kpi-label i{width:8px;height:8px;border-radius:50%}.kpi-value{font-size:24px;font-weight:800;letter-spacing:-.5px;color:#0f172a;margin:6px 0 2px;line-height:1.1}.kpi-delta{display:inline-block;font-size:11px;font-weight:600}.kpi-delta.up{color:#059669}.kpi-delta.down{color:#e11d48}.kpi-spark{margin:6px -6px -4px}.dash-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dash-card{border-radius:8px;padding:18px;min-width:0;box-shadow:0 1px 2px #0f172a0d,0 6px 18px #0f172a0d}.dash-card.span-2{grid-column:span 2}.dash-card header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:12px}.dash-card header h3{margin:0;font-size:13.5px;font-weight:700;color:#0f172a}.dash-card header .muted,.link-small{font-size:11.5px}.chart-tip{background:#0f172a;color:#fff;border-radius:8px;padding:8px 10px;font-size:11.5px;box-shadow:0 8px 24px #00000040}.chart-tip-title{font-weight:700;margin-bottom:4px}.chart-tip-row{display:flex;align-items:center;gap:6px;line-height:1.6}.chart-tip-row i{width:8px;height:8px;border-radius:50%;display:inline-block}.chart-tip-row b{margin-left:auto;padding-left:12px}.chart-empty{height:140px;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:12px;background:#f8fafc;border-radius:8px}.donut-wrap{display:flex;flex-direction:column;gap:10px}.donut-box{position:relative}.donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.donut-center b{font-size:21px;font-weight:800;color:#0f172a;line-height:1}.donut-center span{font-size:11px;color:#94a3b8;margin-top:2px}.legend{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:4px 14px;font-size:12px}.legend li{display:flex;align-items:center;gap:6px;min-width:0}.legend li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#475569}.legend li b{margin-left:auto;color:#0f172a}.legend i{width:9px;height:9px;border-radius:3px;flex:none}.funnel{display:flex;flex-direction:column;gap:8px;align-items:center;padding:4px 0}.funnel-row{width:100%;display:flex;justify-content:center}.funnel-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#fff;font-size:12px;padding:9px 14px;border-radius:8px;min-width:150px;transition:width .4s ease}.funnel-bar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gauge-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gauge-box{position:relative}.gauge-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.gauge-center b{font-size:18px;font-weight:800;color:#0f172a}.gauge-label{text-align:center;font-size:11.5px;color:#64748b;margin-top:2px;font-weight:600}.feed{list-style:none;margin:0;padding:0}.feed li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f1f5f9}.feed li:last-child{border-bottom:none}.feed-main{display:flex;flex-direction:column;min-width:0;flex:1;font-size:13px}.feed-main strong,.feed-main .muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-main .muted{font-size:11.5px}.avatar{flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#28284a;background:#f3f3f9}.avatar.alt{color:#6d34b8;background:#f5f3ff}.dash-skeleton{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.dash-skeleton i{height:96px;border-radius:8px;background:linear-gradient(90deg,#eef2f7,#f8fafc,#eef2f7);background-size:200% 100%;animation:dsh 1.2s infinite linear}@keyframes dsh{to{background-position:-200% 0}}@media (max-width: 1180px){.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-card.span-2{grid-column:span 2}}@media (max-width: 760px){.dash-grid{grid-template-columns:minmax(0,1fr);gap:12px}.dash-card,.dash-card.span-2{grid-column:auto;padding:14px;border-radius:8px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi{padding:12px;border-radius:8px}.kpi-value{font-size:20px}.dash-head h1{font-size:18px}.gauge-row{gap:0}}@media (max-width: 380px){.kpi-grid{grid-template-columns:minmax(0,1fr)}}.pa-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:16px}@media (max-width: 1000px){.pa-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 700px){.pa-overview{grid-template-columns:minmax(0,1fr)}.pa-overview .span-2{grid-column:auto}.pa-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.data-access{margin-top:14px;display:grid;gap:8px}.data-access-title{font-weight:700;font-size:13px}.da-option{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;background:#fff}.da-option.on{border-color:#8a46d9;background:#f3f3f9}.da-option input{margin-top:3px;width:auto}.da-option b{display:block;font-size:13px}.da-option small{display:block;color:#64748b;font-size:12px;margin-top:2px}:root{--nav-bg: #0e0e20;--nav-bg2: #1c1c38;--nav-text: #c8c8e0;--nav-hover: rgba(255,255,255,.07);--accent: #8a46d9;--accent-2: #6d34b8;--accent-soft: rgba(40,40,74,.16);--bar-h: 64px}.ic{flex:0 0 auto;display:block}body,.app-shell.is-desktop{background:#f3f5fa}.app-shell.is-desktop>.sidebar{width:264px;padding:0;position:sticky;top:0;height:100vh;flex-shrink:0;z-index:20;background:linear-gradient(180deg,var(--nav-bg) 0%,var(--nav-bg2) 100%);border-right:1px solid rgba(255,255,255,.05);transition:width .22s ease}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:18px 16px 14px;color:#fff}.brand-mark{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;color:#fff;flex:0 0 auto;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 6px 16px #28284a59}.brand-name{font-size:16.5px;font-weight:600;letter-spacing:.01em;flex:1;white-space:nowrap}.brand-name b{font-weight:800;color:#c9a8f2}.sidebar-collapse{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:0;background:transparent;color:var(--nav-text);cursor:pointer}.sidebar-collapse:hover{background:var(--nav-hover);color:#fff}.sidebar nav{padding:4px 10px 12px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#44446a transparent}.sidebar nav::-webkit-scrollbar{width:6px}.sidebar nav::-webkit-scrollbar-thumb{background:#44446a;border-radius:6px}.nav-group{margin-bottom:4px}.nav-group-label{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:0;cursor:pointer;padding:14px 10px 6px;font-size:10.5px;text-transform:uppercase;letter-spacing:.09em;color:#9a9ac0;font-weight:700}.nav-group-label:hover{color:#e4e4f4}.nav-chev{transition:transform .18s}.is-closed .nav-chev{transform:rotate(-90deg)}.nav-link{position:relative;display:flex;align-items:center;gap:12px;padding:9px 10px;margin:2px 0;border-radius:8px;color:var(--nav-text);font-size:13px;font-weight:500;transition:background .15s,color .15s}.nav-ico{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto;transition:background .15s,color .15s}.nav-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-link:hover{background:var(--nav-hover);color:#fff}.nav-link.active{background:var(--accent-soft);color:#fff;font-weight:600}.nav-link.active .nav-ico{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 4px 12px #28284a66}.nav-link.active:before{content:"";position:absolute;left:-10px;top:9px;bottom:9px;width:4px;border-radius:0 4px 4px 0;background:#8a46d9}.sidebar-footer{margin:0;padding:12px;border-top:1px solid rgba(255,255,255,.06)}.user-card{display:flex;align-items:center;gap:10px;padding:8px;border-radius:8px;background:#ffffff0d}.user-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;font-weight:700;font-size:12px;color:#fff;background:linear-gradient(135deg,#8a46d9,var(--accent-2))}.user-avatar.sm{width:32px;height:32px;font-size:11.5px}.user-meta{min-width:0;flex:1}.user-card .user-name{color:#fff;font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-card .user-role{color:#a9a9cc;font-size:11px;margin:0}.user-card .btn-logout{width:34px;height:34px;padding:0;display:grid;place-items:center;border-radius:8px;background:#ffffff12;color:#cbd5e1;flex:0 0 auto}.user-card .btn-logout:hover{background:#dc2626;color:#fff}.app-shell.rail>.sidebar{width:78px}.rail .sidebar-brand{flex-direction:column;gap:10px;padding:16px 0 10px}.rail .brand-name,.rail .nav-text,.rail .user-meta{display:none}.rail .sidebar nav{padding:4px 8px}.rail .nav-link{justify-content:center;padding:6px 0}.rail .nav-link.active:before{left:-8px}.rail .nav-rail-sep{height:1px;background:#ffffff12;margin:8px 10px}.rail .user-card{flex-direction:column;padding:8px 4px}.app-shell.is-desktop .app-content{padding:0 32px 40px}.is-desktop .topbar{position:sticky;top:0;z-index:15;margin:0 -32px 22px;padding:14px 32px;gap:16px;background:#f3f5fad1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(15,23,42,.06)}.topbar-search{position:relative;flex:1;max-width:520px}.topbar-search .ic{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#8794ad;pointer-events:none}.topbar-search input{padding:11px 14px 11px 42px;border-radius:8px;border:1px solid #e0e5ef;background:#fff;box-shadow:0 1px 2px #0f172a0a;transition:border-color .15s,box-shadow .15s}.topbar-search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #28284a24}.tb-right{display:flex;align-items:center;gap:10px}.tb-btn{position:relative;width:42px;height:42px;display:grid;place-items:center;background:#fff;border:1px solid #e0e5ef;border-radius:8px;color:#475569;cursor:pointer;box-shadow:0 1px 2px #0f172a0a}.tb-btn:hover{color:var(--accent);border-color:#d4d4ea}.topbar-bell-count{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;padding:0 5px;display:grid;place-items:center;border-radius:8px;background:#ef4444;color:#fff;font-size:10.5px;font-weight:700;border:2px solid #f3f5fa}.tb-user{display:flex;align-items:center;gap:10px;padding:4px 14px 4px 4px;background:#fff;border:1px solid #e0e5ef;border-radius:8px}.tb-user-name{font-size:12.5px;font-weight:600;color:#1f2937;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 1100px){.app-shell.is-desktop>.sidebar{width:78px}.app-shell.is-desktop .brand-name,.app-shell.is-desktop .nav-text,.app-shell.is-desktop .user-meta,.app-shell.is-desktop .nav-group-label,.app-shell.is-desktop .sidebar-collapse{display:none}.app-shell.is-desktop .sidebar-brand{justify-content:center;padding:16px 0 10px}.app-shell.is-desktop .nav-link{justify-content:center;padding:6px 0}.app-shell.is-desktop .user-card{flex-direction:column;padding:8px 4px}.app-shell.is-desktop .app-content{padding:0 20px 32px}.is-desktop .topbar{margin:0 -20px 18px;padding:12px 20px}.tb-user-name{display:none}.tb-user{padding:4px}}.app-shell.is-mobile{display:block;background:#f3f5fa}.app-shell.is-mobile .app-content{padding:0 14px calc(var(--bar-h) + 36px + env(safe-area-inset-bottom));width:100%;overflow:visible}.is-mobile .topbar-m{position:sticky;top:0;z-index:30;margin:0 -14px 14px;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;min-height:58px;background:linear-gradient(135deg,#0e0e20,#28284a);color:#fff;border-radius:0 0 8px 8px;box-shadow:0 8px 22px #0f172a38}.tbm-brand{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:600}.tbm-brand b{color:#c9a8f2;font-weight:800}.tbm-brand .brand-mark{width:32px;height:32px;border-radius:8px;box-shadow:none}.tbm-actions{display:flex;align-items:center;gap:8px}.topbar-m .tb-btn{width:38px;height:38px;background:#ffffff1f;border:0;color:#fff;box-shadow:none;border-radius:8px}.topbar-m .topbar-bell-count{border-color:#28284a}.tbm-search{flex:1;display:flex;align-items:center;gap:8px;background:#ffffff24;border-radius:8px;padding:0 4px 0 12px;color:#fff}.tbm-search input{flex:1;min-width:0;background:transparent;border:0;color:#fff;padding:11px 4px;font-size:14px}.tbm-search input::placeholder{color:#ffffffa6}.tbm-search input:focus{outline:none}.bottom-nav{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:60;height:var(--bar-h);display:grid;grid-template-columns:1fr 1fr 78px 1fr 1fr;align-items:center;background:#fffffff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:8px;border:1px solid #e5e9f2;box-shadow:0 14px 34px #0f172a33}.bn-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:100%;border:0;background:none;color:#7a869c;font-size:10.5px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.bn-ico{width:44px;height:28px;border-radius:8px;display:grid;place-items:center;transition:background .18s,color .18s}.bn-item.on{color:var(--accent)}.bn-item.on .bn-ico{background:var(--accent-soft)}.bn-fab,.bn-fab-gap{justify-self:center}.bn-fab{width:62px;height:62px;border-radius:50%;border:4px solid #f3f5fa;margin-top:-30px;display:grid;place-items:center;color:#fff;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 10px 24px #28284a80;transition:transform .22s ease}.bn-fab:active{transform:scale(.94)}.bn-fab.open{transform:rotate(135deg);background:linear-gradient(135deg,#ef4444,#f97316);box-shadow:0 10px 24px #ef444473}.m-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#080f208c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:mfade .18s}.fab-sheet{position:fixed;z-index:70;left:0;right:0;bottom:calc(var(--bar-h) + 48px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:10px}.fab-action{display:flex;align-items:center;gap:12px;background:none;border:0;cursor:pointer;animation:mrise .22s both}.fab-action-label{background:#fff;padding:9px 16px;border-radius:8px;font-size:13px;font-weight:600;color:#1f2937;box-shadow:0 6px 18px #0003}.fab-action-ico{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#8a46d9,var(--accent));box-shadow:0 6px 18px #28284a73}.m-menu{position:fixed;z-index:55;inset:0 0 calc(var(--bar-h) + 20px + env(safe-area-inset-bottom)) 0;display:flex;flex-direction:column;background:#f3f5fa;border-radius:0 0 8px 8px;animation:mrise .22s;overflow:hidden}.m-menu-head{display:flex;align-items:center;gap:12px;padding:calc(14px + env(safe-area-inset-top)) 16px 14px;background:linear-gradient(135deg,#0e0e20,#28284a);color:#fff}.m-menu-head .user-name{font-weight:700;font-size:13.5px}.m-menu-head .user-role{font-size:11.5px;color:#d8d8ec}.m-menu-head .tb-btn{background:#ffffff24;border:0;color:#fff;box-shadow:none}.m-menu-body{overflow-y:auto;padding:4px 14px 24px;-webkit-overflow-scrolling:touch}.m-menu-body h4{margin:18px 4px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#7a869c}.m-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.m-tile{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 6px 12px;text-align:center;background:#fff;border:1px solid #e8ecf4;border-radius:8px;color:#334155;font-size:11.5px;font-weight:600;line-height:1.25;box-shadow:0 1px 2px #0f172a0a}.m-tile-ico{width:44px;height:44px;border-radius:8px;display:grid;place-items:center;color:var(--accent);background:var(--accent-soft)}.m-tile.on{border-color:var(--accent)}.m-tile.on .m-tile-ico{color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2))}.m-logout{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:22px;padding:13px;border:0;border-radius:8px;background:#fee2e2;color:#b91c1c;font-weight:700;font-size:13.5px;cursor:pointer}@keyframes mfade{0%{opacity:0}}@keyframes mrise{0%{opacity:0;transform:translateY(14px)}}.is-mobile .page-header{margin-bottom:12px}.is-mobile .page h1,.is-mobile .page>h1{font-size:18px}.is-mobile .page-header button,.is-mobile .btn-secondary,.is-mobile .panel,.is-mobile .stat-card,.is-mobile .inline-form{border-radius:8px}@media (min-width: 560px) and (max-width: 900px){.bottom-nav{left:50%;right:auto;width:520px;transform:translate(-50%)}.fab-sheet{left:0;right:0}}@media print{.bottom-nav,.m-scrim,.m-menu,.fab-sheet{display:none!important}}.nav-link{position:relative}.nav-badge{margin-left:auto;min-width:19px;height:19px;padding:0 6px;display:inline-grid;place-items:center;border-radius:8px;background:#ef4444;color:#fff;font-size:10.5px;font-weight:700}.sidebar.is-collapsed .nav-badge{position:absolute;top:4px;right:6px;margin:0;min-width:16px;height:16px;font-size:10px;padding:0 4px}.app-picker{position:relative;flex:1;min-width:220px}.app-picker-field{position:relative}.inline-form .app-picker-field input,.app-picker-field input{width:100%;padding:9px 30px 9px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff;min-width:0}.inline-form .app-picker-x,.app-picker-x{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:#6b7280;font-size:16px;line-height:1;cursor:pointer}.app-picker-x:hover{background:#f3f4f6;color:#111827}.app-picker-list{position:absolute;z-index:60;left:0;right:0;top:calc(100% + 2px);margin:0;padding:4px;list-style:none;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 24px #00000024;max-height:280px;overflow-y:auto}.app-picker-list li{padding:8px 10px;border-radius:6px;font-size:12px;cursor:pointer}.app-picker-list li.hot{background:#e8e8f3}.app-picker-list li[aria-selected=true]{font-weight:600}.app-picker-list li .muted{display:block;font-size:11.5px}.app-picker-empty{color:#6b7280;cursor:default!important}.app-info{flex-basis:100%;margin-top:8px;padding:10px 12px;border:1px dashed #d4d4ea;border-radius:8px;background:#f9f9fc;font-size:12px}.app-info-grid{display:flex;flex-wrap:wrap;gap:4px 18px}.app-info-grid em{font-style:normal;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin-right:4px}.app-info a{color:#28284a;text-decoration:underline}.inline-form .app-picker{flex:2}.badge-blacklist{background:#111827;color:#fff}.badge-reject{background:#fee2e2;color:#991b1b}.badge-due{background:#fee2e2;color:#b91c1c}.badge-soon{background:#fef3c7;color:#92400e}.badge-done{background:#dcfce7;color:#166534}.badge-off{background:#e5e7eb;color:#374151}.rej-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.rej-list li{padding:10px 12px;border:1px solid #fecaca;background:#fafafd;border-radius:8px;font-size:12px}.rej-list li strong{font-size:13px}.rej-list .muted{display:block}.tax-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.tax-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid #d4d4ea;background:#f3f3f9;font-weight:600;font-size:12px;cursor:pointer}.tax-chip.on{background:#28284a;border-color:#28284a;color:#fff}.tax-chip .x{border:0;background:transparent;color:inherit;cursor:pointer;font-size:13.5px;line-height:1;padding:0}.tax-pick{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:#6b7280;font-weight:600;flex:1;min-width:120px}.tax-pick select,.tax-pick input{padding:9px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px}@media (max-width: 640px){.app-picker{min-width:100%}}.view-toggle{flex-wrap:wrap}:root{--font: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--brand: #28284a;--brand-dark: #15152b;--brand-2: #8a46d9;--brand-soft: #f3f3f9;--brand-tint: #e8e8f3;--brand-ring: rgba(138, 70, 217, .18);--accent: #8a46d9;--accent-2: #6d34b8;--accent-soft: rgba(138, 70, 217, .18);--brand-grad: linear-gradient(135deg, #28284a 0%, #8a46d9 100%);--ink: #1b1b33;--ink-soft: #4b4b66;--line: #e6e6ef;--field-line: #d6d6e3;--radius: 8px;--radius-lg: 8px;--field-h: 36px;--btn-h: 36px;--shadow-sm: 0 1px 2px rgba(27, 27, 51, .05), 0 1px 3px rgba(27, 27, 51, .05);--shadow-md: 0 8px 22px rgba(27, 27, 51, .1)}body{background:#f5f5f9;color:var(--ink);-webkit-font-smoothing:antialiased}.app-shell,.app-shell.is-desktop,.app-shell.is-mobile{background:#f5f5f9}.is-desktop .topbar{background:#f6f4f6db}input[type=checkbox],input[type=radio],input[type=range],progress{accent-color:var(--brand)}::selection{background:var(--brand-tint);color:var(--brand-dark)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--brand-2);outline-offset:2px}.brand-mark{background:#fff;box-shadow:0 4px 14px #00000047;padding:5px;overflow:hidden}.brand-logo{display:block;width:100%;height:100%;object-fit:contain}.sidebar-brand .brand-logo{width:36px;height:36px;padding:5px;background:#fff;border-radius:8px;box-shadow:0 4px 14px #00000047;flex:0 0 auto}.sidebar-brand .brand-mark .brand-logo{width:100%;height:100%;padding:0;background:none;box-shadow:none;border-radius:0}.portal-sidebar .sidebar-brand{gap:10px;align-items:center}.portal-sidebar .brand-name{color:#fff;font-size:16px;font-weight:700}.login-logo{display:block;width:64px;height:64px;object-fit:contain;margin:0 auto 10px}.landing-hero .login-logo{width:76px;height:76px;margin-bottom:12px}.brand-name b{color:#c9a8f2}.login-page{background:radial-gradient(1200px 600px at 12% -10%,rgba(138,70,217,.55),transparent 60%),linear-gradient(135deg,#0e0e20,#15152b 55%,#28284a);padding:24px 16px}.login-card{width:100%;max-width:400px;padding:34px 32px 30px;border-radius:8px;box-shadow:0 24px 60px #0a0a1c73}.login-card h1,.login-card h2{text-align:center;margin:0 0 4px;font-size:18px;color:var(--ink)}.login-card .subtitle{text-align:center;margin:0 0 20px}.login-card label{margin:14px 0 6px;font-size:12px;font-weight:600;color:var(--ink-soft)}.login-card button[type=submit],.login-card>button{margin-top:22px;width:100%}.login-card .hint{margin-top:16px}.alert-error,.alert-warn{border-radius:var(--radius);padding:10px 14px;line-height:1.4}.landing-page{background:linear-gradient(180deg,#fff 0,#f8f8fc)}.landing-hero h1{color:var(--brand)}.plan-card{border-radius:var(--radius-lg)}.plan-card.featured{border-color:var(--brand);box-shadow:0 12px 30px #28284a2e}.plan-badge{background:var(--brand-grad)}.plan-card button{width:100%}.page-header button,.inline-form button,.record-actions button,.assign-bar button,.filter-row>button,.btn-primary,.plan-card button,.login-card button,.doc-actions>button,.btn-danger-solid,.btn-secondary,.pa-btn,.tk-btn,.settings-form button,.template-form>button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--btn-h);padding:0 18px;border-radius:var(--radius);border:1px solid transparent;font:inherit;font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s,transform .05s,color .15s}.page-header button,.inline-form button,.record-actions button,.assign-bar button,.filter-row>button,.btn-primary,.plan-card button,.login-card button,.doc-actions>button,.settings-form button,.template-form>button{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 1px 2px #28284a40}.page-header button:hover,.inline-form button:hover,.record-actions button:hover,.assign-bar button:hover,.filter-row>button:hover,.btn-primary:hover,.plan-card button:hover,.login-card button:hover,.doc-actions>button:hover,.settings-form button:hover{background:var(--brand-dark);border-color:var(--brand-dark);box-shadow:0 4px 12px #28284a4d}.page-header button:active,.inline-form button:active,.record-actions button:active,.btn-primary:active,.login-card button:active{transform:translateY(1px)}.btn-secondary,.assign-bar button.secondary,.inline-form button.btn-secondary,.page-header button.btn-secondary,.record-actions .btn-secondary,.doc-actions>.btn-secondary,.page-header .doc-actions>.btn-secondary{background:#fff;color:var(--brand);border:1px solid var(--brand);box-shadow:none}.btn-secondary:hover,.assign-bar button.secondary:hover,.inline-form button.btn-secondary:hover,.page-header button.btn-secondary:hover,.record-actions .btn-secondary:hover,.doc-actions>.btn-secondary:hover{background:var(--brand-soft);color:var(--brand-dark);border-color:var(--brand-dark);box-shadow:none}.record-actions .btn-secondary{background:#fff;color:var(--ink-soft);border-color:var(--field-line)}.record-actions .btn-secondary:hover{background:#f5f6f9;color:var(--ink);border-color:#c5ccd8}.btn-danger-solid,.inline-form button.btn-danger,.page-header button.btn-danger{background:#dc2626;border-color:#dc2626;color:#fff;box-shadow:none}.btn-danger-solid:hover,.inline-form button.btn-danger:hover,.page-header button.btn-danger:hover{background:#b91c1c;border-color:#b91c1c;box-shadow:0 4px 12px #dc262647}button:disabled,.btn-secondary:disabled,.page-header button:disabled,.inline-form button:disabled,.record-actions button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-small{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;padding:0 12px;margin:0;border-radius:8px;border:1px solid transparent;font:inherit;font-size:12px;font-weight:600;line-height:1;background:var(--brand);color:#fff;cursor:pointer;white-space:nowrap;transition:background .15s,box-shadow .15s}*+.btn-small{margin-left:6px}.btn-small:hover{background:var(--brand-dark)}.btn-small.btn-danger,.btn-small.btn-danger:hover{background:#dc2626}.btn-small.btn-danger:hover{background:#b91c1c}.row-actions .btn-small,.row-actions-cell .btn-small,.doc-actions .btn-small,.pay-row .btn-small,.sp-row-actions .btn-small,.inline-form .btn-small,td>.btn-small:first-child{margin-left:0}.row-actions,.row-actions-cell,.doc-actions,.record-actions{align-items:center}.data-table td .btn-small+.btn-small{margin-left:6px}:is(.inline-form,.record-field,.filter-row,.page-header,.login-card,.field-inline,.pa-form,.lead-form,.assign-bar,.modal-body,.settings-form,.template-form,.import-options,.pa-toolbar,.pa-grid,.tk-form,.sp-form) :is(input,select,textarea):not([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=hidden]){min-height:var(--field-h);padding:0 12px;border:1px solid var(--field-line);border-radius:var(--radius);background-color:#fff;color:#111827;font:inherit;font-size:13px;font-weight:400;line-height:1.3;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}:is(.inline-form,.record-field,.filter-row,.page-header,.login-card,.field-inline,.pa-form,.lead-form,.assign-bar,.modal-body,.settings-form,.template-form,.import-options,.pa-toolbar,.pa-grid,.tk-form,.sp-form) textarea{min-height:92px;padding:10px 12px;resize:vertical;line-height:1.45}:is(.inline-form,.record-field,.filter-row,.page-header,.login-card,.field-inline,.pa-form,.lead-form,.assign-bar,.modal-body,.settings-form,.template-form,.import-options,.pa-toolbar,.pa-grid,.tk-form,.sp-form) select:not([multiple]),select:not([multiple]){-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:34px;min-height:var(--field-h);border:1px solid var(--field-line);border-radius:var(--radius);background-color:#fff;color:#111827;font:inherit;font-size:13px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2328284a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-left:12px;cursor:pointer}.assign-select{min-height:32px!important;padding:0 28px 0 10px!important;font-size:12px!important}input:not([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=hidden]):focus,select:focus,textarea:focus{outline:none;border-color:var(--brand)!important;box-shadow:0 0 0 3px var(--brand-ring)}input::placeholder,textarea::placeholder{color:#9aa3b2}input:disabled,select:disabled,textarea:disabled,input[readonly]{background-color:#f4f5f8;color:#6b7280;cursor:not-allowed}input[type=file]{font-size:12px;max-width:100%}input[type=file]::file-selector-button{margin-right:10px;padding:8px 14px;border:1px solid var(--brand);border-radius:8px;background:#fff;color:var(--brand);font:inherit;font-size:12px;font-weight:600;cursor:pointer}input[type=file]::file-selector-button:hover{background:var(--brand-soft)}.field-inline,.record-field{font-size:12px;font-weight:600;color:var(--ink-soft);gap:6px;letter-spacing:.01em}.record-field.check,.check-inline,.team-picker label,.import-options label.radio{font-size:13px;font-weight:500;color:var(--ink)}.record-field small,.muted,.hint{color:#7a8394}.form-sec{color:var(--brand);border-bottom:1px solid var(--line);padding-bottom:6px;margin:20px 0 10px;letter-spacing:.06em;font-weight:700}.inline-form{align-items:flex-end;gap:12px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.inline-form input,.inline-form select{min-width:180px}.inline-form .field-inline{min-width:180px;justify-content:flex-end}.inline-form button{flex:0 0 auto}.record-grid{gap:16px 18px;align-items:start}.record-actions{gap:10px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);justify-content:flex-end}.settings-form{gap:18px}.filter-row{gap:10px;align-items:center}.filter-row input,.filter-row select{min-height:40px}.filter-chip{min-height:36px;display:inline-flex;align-items:center;padding:0 14px;border-color:var(--field-line);color:var(--ink-soft);transition:all .15s}.filter-chip:hover{border-color:var(--brand);color:var(--brand)}.filter-chip.on{background:var(--brand);border-color:var(--brand);color:#fff}.team-picker label{background:#f5f5f9;border:1px solid transparent;padding:7px 12px}.team-picker label:hover{border-color:var(--brand)}.assign-bar{gap:10px;border-color:#d4d4ea;background:var(--brand-soft);border-radius:var(--radius-lg);align-items:center}.import-options{background:var(--brand-soft);border-color:#d4d4ea;border-radius:var(--radius)}.page>h1,.page h1{color:var(--ink);letter-spacing:-.01em;font-weight:700}.page-header{align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:18px}.page-header>h1,.page-header>h2,.page-header>h3,.page-header>.title-stack{margin:0;flex:1 1 auto;min-width:0}.page-header>div:last-child:not(.title-stack){display:flex;align-items:center;gap:10px;flex-wrap:wrap}.page-header input{min-width:240px}.panel,.stat-card,.table-wrap,.portal-card,.inline-form,.invoice-summary,.staff-chip,.doc-toolbar{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff}.panel{padding:20px 22px}.panel h3,.chart-card h3{margin-top:0;font-size:14px;color:var(--ink)}.two-col,.portal-grid,.card-grid{gap:18px}.card-grid{margin-bottom:22px}.stat-card{padding:18px 20px}.stat-value{color:var(--brand)}.stat-card:hover{box-shadow:var(--shadow-md)}.staff-chip:hover{border-color:var(--brand)}.staff-chip.active{border-color:var(--brand);background:var(--brand-soft)}.back-link,a.link,.page a.link{color:var(--brand)}.table-wrap{overflow-x:auto;overflow-y:hidden}.data-table th{background:#f7f7fb;color:#6b5160;font-size:11px;letter-spacing:.06em;padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.data-table td{padding:13px 16px;vertical-align:middle;border-bottom:1px solid #f1eef0;color:var(--ink)}.data-table tbody tr:last-child td{border-bottom:0}.data-table tr.clickable:hover,.data-table tbody tr:hover{background:#f9f9fc}.data-table td:last-child .row-actions,.data-table td:last-child .row-actions-cell{justify-content:flex-start}.permission-matrix th,.permission-matrix td{text-align:center}.permission-matrix td:first-child,.permission-matrix th:first-child{text-align:left}.empty-cell{padding:36px 16px!important}.badge{background:var(--brand-tint);color:var(--brand-dark)}.badge.status-unpaid{background:var(--brand-tint);color:var(--brand-dark)}.modal-backdrop{background:#0e0e208c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-box{border-radius:8px;box-shadow:0 28px 70px #0e0e2066;overflow:hidden}.modal-head{padding:16px 22px;background:#fff;border-bottom:1px solid var(--line);position:relative}.modal-head:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--brand-grad)}.modal-head h3{font-size:15px}.modal-body{padding:20px 22px 22px}.modal-x{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;padding:0}.modal-x:hover{background:var(--brand-soft);color:var(--brand)}.bar-fill{background:var(--brand-grad)}.bar-track{background:#ececf3}.topbar-search input:focus{border-color:var(--brand)!important;box-shadow:0 0 0 4px var(--brand-ring)}.tb-btn:hover{color:var(--brand);border-color:#d4d4ea}.nav-link.active:before{background:var(--brand-2)}.m-tile.on{border-color:var(--brand)}.pa-btn.primary,.tk-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.pa-btn.primary:hover,.tk-btn.primary:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.pa-btn:not(.primary):not(.danger),.tk-btn:not(.primary){background:#fff;color:var(--ink);border-color:var(--field-line)}.pa-btn:not(.primary):not(.danger):hover,.tk-btn:not(.primary):hover{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-dark)}.pa-btn.small{min-height:30px;padding:0 12px;font-size:12px}.sp-sec{border-radius:var(--radius)}.sp-big{background:var(--brand-grad)}.sp-big.in{background:#16a34a}.sp-big.out{background:#dc2626}.sp-form input:not([type=checkbox]),.sp-form select,.sp-form textarea{border-color:var(--field-line)}.pa-page{max-width:1280px}@media (max-width: 640px){:is(.inline-form,.record-field,.filter-row,.page-header,.login-card,.field-inline,.pa-form,.lead-form,.assign-bar,.modal-body,.settings-form,.template-form,.import-options,.pa-toolbar,.pa-grid,.tk-form,.sp-form) :is(input,select,textarea):not([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=hidden]){font-size:14px;min-height:46px}select:not([multiple]){font-size:14px;min-height:46px}.inline-form{padding:14px;align-items:stretch}.inline-form input,.inline-form select,.inline-form .field-inline{min-width:0}.inline-form button,.assign-bar button,.record-actions button{width:100%;min-height:46px}.record-actions{border-top:0;padding-top:0}.page-header{gap:10px}.page-header>h1,.page-header>h2,.page-header>h3{flex:1 1 100%}.page-header>button,.page-header>a,.page-header>div:last-child:not(.title-stack){width:100%}.page-header>div:last-child:not(.title-stack)>button{flex:1 1 auto}.login-card{padding:28px 20px 24px}.panel,.modal-body{padding:16px}.data-table.stack td{padding:10px 0}*+.btn-small{margin-left:0}.btn-small{min-height:34px}}@media print{.login-logo{display:none}}input[type=checkbox],input[type=radio]{flex:0 0 auto!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:0!important;padding:0!important;margin:0;box-shadow:none;border-radius:revert;-moz-appearance:auto;appearance:auto;-webkit-appearance:auto}.da-option input[type=radio],.da-option input[type=checkbox]{margin-top:2px}.permission-matrix input[type=checkbox]{width:16px!important;height:16px!important;min-width:16px!important}.team-picker input,.import-options input[type=radio]{width:16px!important;min-width:16px!important}.inline-form{min-width:0;max-width:100%}.inline-form>*{max-width:100%}.inline-form>.table-wrap,.inline-form>div:not(.app-picker):not(.field-inline){min-width:0}.inline-form>.app-picker,.inline-form .app-picker{flex:2 1 260px;min-width:220px}.app-picker-field input{min-width:0;width:100%;padding-right:30px}.inline-form>.table-wrap{width:100%}.app-content>.page,.page{min-width:0;width:100%}.da-option{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;align-items:flex-start}.da-option>span{flex:1;min-width:0}.da-option.on{border-color:var(--brand);background:var(--brand-soft)}.da-option b{font-size:13px;color:var(--ink)}.da-option small{color:#6b7280;line-height:1.4}.inline-form>div[style*=flex]>input,.inline-form>div[style*=flex]>select{flex:1 1 200px;min-width:0}.inline-form[style*=column]{flex-wrap:nowrap;align-items:stretch}.inline-form[style*=column]>div[style*=flex]{align-items:flex-end;align-content:flex-start}.plan-tabs{display:flex;justify-content:center;gap:4px;background:#ececf5;border-radius:8px;padding:5px;width:fit-content;margin:0 auto 30px}.plan-tab{background:transparent;color:#4a4a70;border:0;border-radius:8px;padding:9px 24px;font-weight:700;cursor:pointer;font-family:inherit}.plan-tab.on{background:#fff;color:#28284a;box-shadow:0 2px 10px #28284a38}.plan-offer{display:inline-block;background:#f3f3f9;color:#28284a;border:1px solid #d8d8ec;border-radius:8px;font-size:11.5px;font-weight:800;padding:3px 10px;margin-bottom:8px;align-self:flex-start}.plan-was{color:#94a3b8;text-decoration:line-through;font-weight:600;margin-right:8px}button.icon-btn.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:32px;height:32px;min-height:32px;padding:0;margin:0;border-radius:8px;border:1px solid #e3e7ef;background:#fff;color:#475569;cursor:pointer;box-shadow:none;transition:background .15s,color .15s,border-color .15s,transform .05s}button.icon-btn.icon-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1;box-shadow:none}button.icon-btn.icon-btn:active{transform:translateY(1px)}button.icon-btn.icon-btn:disabled{opacity:.5;cursor:not-allowed}button.icon-btn.icon-btn:focus-visible{outline:2px solid #28284a;outline-offset:2px}button.icon-btn.tone-edit{color:#2563eb;background:#eff6ff;border-color:#dbeafe}button.icon-btn.tone-edit:hover{background:#2563eb;border-color:#2563eb;color:#fff}button.icon-btn.tone-delete{color:#dc2626;background:#fef2f2;border-color:#fee2e2}button.icon-btn.tone-delete:hover{background:#dc2626;border-color:#dc2626;color:#fff}button.icon-btn.tone-view{color:#0f766e;background:#f0fdfa;border-color:#ccfbf1}button.icon-btn.tone-view:hover{background:#0f766e;border-color:#0f766e;color:#fff}button.icon-btn.tone-stock{color:#b45309;background:#fffbeb;border-color:#fde68a}button.icon-btn.tone-stock:hover{background:#b45309;border-color:#b45309;color:#fff}.icon-btn .ic{display:block}.btn-ic{display:inline-flex;align-items:center;gap:7px}.btn-ic .ic{margin-top:-1px}.row-actions-cell{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap}.pay-items{flex:1 1 100%;border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px;background:#fafbfc;display:flex;flex-direction:column;gap:10px}.pay-items .pay-items-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.pay-items .pay-items-head b{font-size:13px}.pay-items .line-scroll{overflow-x:auto}.pay-items table.line-items{min-width:640px}.pay-items .pay-items-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.pay-items .pay-items-sum{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:#475569}.pay-items .pay-items-sum b{color:#0f172a}.modal-box.modal-preview{max-width:940px}.preview-bar{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-bottom:12px}.preview-bar button{margin:0}.modal-preview .doc-scroll{max-height:calc(100vh - 230px);overflow:auto}@media print{body.printing-modal .page>*:not(.modal-backdrop){display:none!important}body.printing-modal .modal-backdrop{position:static!important;display:block!important;background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:0!important;overflow:visible!important}body.printing-modal .modal-box{box-shadow:none!important;max-width:none!important;border-radius:0!important;overflow:visible!important}body.printing-modal .modal-head,body.printing-modal .preview-bar{display:none!important}body.printing-modal .modal-body{padding:0!important}body.printing-modal .modal-preview .doc-scroll{max-height:none!important;overflow:visible!important}}.pay-items table.line-items{width:100%;table-layout:auto}.pay-items table.line-items td input,.pay-items table.line-items td select{min-width:0!important;width:100%!important;flex:none!important;box-sizing:border-box}.pay-items table.line-items td.qty{width:78px}.pay-items table.line-items td.num{width:112px}.pay-items table.line-items td.amt{width:110px;text-align:right;white-space:nowrap;font-weight:600}.pay-items table.line-items td:first-child{width:26px}:root{--font: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--ink-brand: #28284a;--purple: #8a46d9;--purple-dark: #6d34b8;--brand: #28284a;--brand-dark: #15152b;--brand-2: #8a46d9;--accent: #8a46d9;--accent-2: #6d34b8;--brand-soft: #f3f3f9;--brand-tint: #e8e8f3;--brand-ring: rgba(138, 70, 217, .18);--brand-grad: linear-gradient(135deg, #28284a 0%, #8a46d9 100%);--ink: #1b1b33;--ink-soft: #4b4b66;--line: #e6e6ef;--field-line: #d6d6e3;--radius: 8px;--radius-lg: 8px;--field-h: 36px;--btn-h: 36px;--page-bg: #f5f5f9}html{font-size:13px}body,button,input,select,textarea,table{font-family:var(--font)}body{font-size:13px;line-height:1.5;background:var(--page-bg);color:var(--ink);letter-spacing:0}.app-shell,.app-shell.is-desktop,.app-shell.is-mobile{background:var(--page-bg)}h1{font-size:19px;font-weight:600;line-height:1.3}h2{font-size:16px;font-weight:600;line-height:1.3}h3{font-size:14px;font-weight:600;line-height:1.35}h4{font-size:13px;font-weight:600}.page>h1,.page h1,.page-header h1{font-size:19px;font-weight:600}small,.muted,.hint{font-size:11.5px}::selection{background:#e5d6fa;color:#15152b}*{scrollbar-width:thin;scrollbar-color:#c4c4d8 transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#c4c4d8;border-radius:4px}::-webkit-scrollbar-track{background:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--purple);outline-offset:2px}.panel,.card,.stat-card,.table-wrap,.portal-card,.inline-form,.modal-box,.doc-toolbar,.staff-chip,.plan-card,.login-card,.chart-card,.invoice-summary,.tk-item,.da-option,.assign-bar,.import-options,input,select,textarea,button{border-radius:8px}.badge,.status-badge,.pill,.tk-chip,.inv-status,.plan-badge,.filter-chip{border-radius:6px}input[type=checkbox]{border-radius:4px}.page-header button,.inline-form button,.record-actions button,.assign-bar button,.filter-row>button,.btn-primary,.plan-card button,.login-card button,.doc-actions>button,.settings-form button,.template-form>button,.pa-btn.primary,.tk-btn.primary,.landing-hero button,.sp-form button,.portal-card button:not(.btn-small):not(.btn-secondary){background:var(--ink-brand);border-color:var(--ink-brand);color:#fff;box-shadow:none;min-height:var(--btn-h);padding:0 16px;font-size:12.5px;font-weight:500;letter-spacing:.01em;border-radius:8px}.page-header button:hover,.inline-form button:hover,.record-actions button:hover,.assign-bar button:hover,.filter-row>button:hover,.btn-primary:hover,.plan-card button:hover,.login-card button:hover,.doc-actions>button:hover,.settings-form button:hover,.pa-btn.primary:hover,.tk-btn.primary:hover,.sp-form button:hover{background:var(--purple);border-color:var(--purple);box-shadow:0 4px 12px #8a46d947;color:#fff}.btn-secondary,.assign-bar button.secondary,.inline-form button.btn-secondary,.page-header button.btn-secondary,.record-actions .btn-secondary,.doc-actions>.btn-secondary,.page-header .doc-actions>.btn-secondary,.pa-btn:not(.primary):not(.danger),.tk-btn:not(.primary){background:#fff;color:var(--ink-brand);border:1px solid var(--ink-brand);box-shadow:none;font-weight:500}.btn-secondary:hover,.assign-bar button.secondary:hover,.inline-form button.btn-secondary:hover,.page-header button.btn-secondary:hover,.record-actions .btn-secondary:hover,.doc-actions>.btn-secondary:hover,.pa-btn:not(.primary):not(.danger):hover,.tk-btn:not(.primary):hover{background:var(--ink-brand);color:#fff;border-color:var(--ink-brand);box-shadow:none}.record-actions .btn-secondary{color:var(--ink-brand);border-color:var(--ink-brand);background:#fff}.btn-small,.doc-actions>.btn-small,.page-header .doc-actions>.btn-small{min-height:28px;padding:0 11px;font-size:11.5px;font-weight:500;border-radius:6px;border:1px solid var(--ink-brand);background:var(--ink-brand);color:#fff;letter-spacing:.01em}.btn-small:hover,.doc-actions>.btn-small:hover{background:var(--purple);border-color:var(--purple);color:#fff}.btn-small[style*="background: #fff"],.btn-small[style*="background:#fff"]{background:#fff!important;color:var(--ink-brand)!important;border:1px solid var(--ink-brand)!important}.btn-danger,.btn-small.btn-danger,.btn-danger-solid,.inline-form button.btn-danger,.page-header button.btn-danger,.pa-btn.danger,.doc-actions>.btn-small.btn-danger{background:#fff;color:#c81e1e;border:1px solid #e9b4b4;box-shadow:none}.btn-danger:hover,.btn-small.btn-danger:hover,.btn-danger-solid:hover,.inline-form button.btn-danger:hover,.page-header button.btn-danger:hover,.pa-btn.danger:hover,.doc-actions>.btn-small.btn-danger:hover{background:#c81e1e;color:#fff;border-color:#c81e1e;box-shadow:none}button:disabled{opacity:.5}.filter-chip{min-height:30px;font-size:12px;padding:0 12px}.filter-chip.on{background:var(--ink-brand);border-color:var(--ink-brand)}input[type=file]::file-selector-button{padding:6px 12px;border-radius:6px;font-size:11.5px;border-color:var(--ink-brand);color:var(--ink-brand)}input[type=file]::file-selector-button:hover{background:var(--ink-brand);color:#fff}:is(.inline-form,.record-field,.filter-row,.page-header,.login-card,.field-inline,.pa-form,.lead-form,.assign-bar,.modal-body,.settings-form,.template-form,.import-options,.pa-toolbar,.pa-grid,.tk-form,.sp-form) :is(input,select,textarea):not([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=hidden]){min-height:var(--field-h);font-size:12.5px;border-radius:8px;border-color:var(--field-line);padding:0 11px}select:not([multiple]){font-size:12.5px;min-height:var(--field-h);border-radius:8px}input:not([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=hidden]):focus,select:focus,textarea:focus{border-color:var(--purple)!important;box-shadow:0 0 0 3px var(--brand-ring)}.field-inline,.record-field{font-size:11.5px;font-weight:500;color:var(--ink-soft)}.form-sec{color:var(--ink-brand);font-size:11px;letter-spacing:.08em}.record-field.check,.check-inline,.team-picker label{font-size:12.5px}input[type=checkbox],input[type=radio]{accent-color:var(--ink-brand)}.inline-form{padding:14px 16px}.record-actions{margin-top:16px;padding-top:12px}.panel,.stat-card,.table-wrap,.portal-card,.inline-form,.invoice-summary,.staff-chip,.doc-toolbar,.chart-card{border-radius:8px;border-color:var(--line);box-shadow:0 1px 2px #1b1b330a}.panel{padding:16px 18px}.panel h3,.chart-card h3{font-size:13px;font-weight:600}.stat-card{padding:14px 16px;border-top:2px solid var(--ink-brand)}.stat-card:hover{box-shadow:0 6px 18px #1b1b3314}.stat-value{color:var(--ink-brand);font-size:22px;font-weight:600}.stat-label{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:#6b6b88}.two-col,.portal-grid,.card-grid{gap:14px}.page-header{margin-bottom:14px}.data-table{font-size:12px}.data-table th{background:#f6f6fb;color:#54546f;font-size:10.5px;font-weight:600;letter-spacing:.06em;padding:9px 12px;white-space:nowrap}.data-table td{padding:9px 12px;font-size:12px;color:var(--ink);border-bottom:1px solid #eeeef5}.data-table tbody tr:hover,.data-table tr.clickable:hover{background:#f7f5fd}.badge{background:#ecebf6;color:var(--ink-brand);font-size:10.5px;font-weight:600;padding:2px 8px}.badge-active{background:#dcfce7;color:#166534}.badge-pending{background:#fef9c3;color:#854d0e}.badge-suspended{background:#fee2e2;color:#991b1b}.badge.status-unpaid{background:#ecebf6;color:var(--ink-brand)}a.link,.page a.link,.back-link{color:var(--purple-dark);font-weight:500}.modal-box{border-radius:8px}.modal-head{padding:12px 18px}.modal-head:after{height:2px;background:var(--purple)}.modal-head h3{font-size:14px}.modal-body{padding:16px 18px 18px}.modal-x{width:30px;height:30px;border-radius:6px}.modal-x:hover{background:var(--brand-soft);color:var(--ink-brand)}.app-shell.is-desktop>.sidebar{width:236px;background:linear-gradient(180deg,#0e0e20,#1c1c38)}.app-shell.is-desktop.rail>.sidebar{width:68px}.rail .sidebar-brand{padding:12px 0 8px;align-items:center}.rail .sidebar-collapse{display:grid;background:#ffffff14;color:#fff}.rail .sidebar-collapse svg{transform:scaleX(-1)}.rail .nav-ico{margin:0 auto}.rail .nav-badge{position:absolute;top:2px;right:8px}@media (max-width: 1100px){.app-shell.is-desktop>.sidebar,.app-shell.is-desktop.rail>.sidebar{width:68px}}.sidebar-brand{padding:14px 14px 10px;gap:10px}.brand-mark{width:32px;height:32px;border-radius:8px;background:#fff;box-shadow:none;padding:4px}.sidebar-brand .brand-logo{width:32px;height:32px;border-radius:8px;box-shadow:none;padding:4px}.brand-name{font-size:16px;font-weight:600}.brand-name b{color:#c9a8f2;font-weight:600}.sidebar-collapse{width:28px;height:28px;border-radius:6px}.nav-group-label{font-size:10px;padding:12px 8px 4px}.nav-link{padding:6px 8px;gap:10px;font-size:12.5px;border-radius:8px;margin:1px 0}.nav-ico{width:28px;height:28px;border-radius:6px}.nav-link.active{background:#8a46d938}.nav-link.active .nav-ico{background:var(--purple);box-shadow:none}.nav-link.active:before{background:#c9a8f2;width:3px;left:-10px}.user-card{border-radius:8px;padding:7px}.user-avatar{width:32px;height:32px;font-size:11.5px;background:var(--purple);border-radius:50%}.user-card .user-name{font-size:12px}.user-card .user-role{font-size:10.5px}.user-card .btn-logout{width:30px;height:30px;border-radius:6px}.is-desktop .topbar{background:#f5f5f9e6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.topbar-search input{font-size:12.5px;border-radius:8px}.tb-btn{border-radius:8px}.sidebar nav{scrollbar-color:#44446a transparent}.sidebar nav::-webkit-scrollbar-thumb{background:#44446a}.m-menu-head{background:linear-gradient(135deg,#0e0e20,#28284a)}.bn-fab{background:var(--purple);box-shadow:0 8px 20px #8a46d973;border-radius:50%}.bn-fab.open{background:#28284a;box-shadow:0 8px 20px #0e0e2066}.fab-action-ico,.m-tile.on .m-tile-ico{background:var(--ink-brand)}.login-page,.sp-login{background:radial-gradient(900px 480px at 85% -8%,rgba(138,70,217,.5),transparent 60%),radial-gradient(700px 420px at -5% 105%,rgba(138,70,217,.28),transparent 60%),linear-gradient(160deg,#0b0b1a,#1c1c38)}.login-card{max-width:380px;padding:28px 28px 24px;border-radius:8px;box-shadow:0 24px 60px #05051480}.login-card h1,.login-card h2{font-size:18px}.login-logo,.landing-hero .login-logo{width:auto;height:40px;max-width:78%;margin:0 auto 14px;object-fit:contain}.landing-page{background:linear-gradient(180deg,#fff 0,#f7f7fb)}.landing-hero h1{color:var(--ink-brand)}.plan-card{border-radius:8px}.plan-card.featured{border-color:var(--ink-brand);box-shadow:0 12px 30px #28284a29}.plan-badge{background:var(--ink-brand);border-radius:6px}.plan-tabs{border-radius:8px}.plan-tab{border-radius:6px;font-size:12px}.plan-tab.on{color:var(--ink-brand)}.bar-fill{background:linear-gradient(90deg,#28284a,#8a46d9);border-radius:4px}.bar-track{border-radius:4px}.doc-sheet{border-top:4px solid var(--ink-brand);padding:11mm 12mm 8mm;border-radius:0;font-family:var(--font)}.doc-head,.doc-foot,.invoice-sheet,.letter-sheet,.lt-table,.lt-itinerary{font-family:var(--font)}.doc-head{border-bottom:1.5px solid var(--ink-brand);padding-bottom:10px;margin-bottom:14px}.doc-logo{max-height:54px;max-width:160px}.doc-company{font-size:14.5px;font-weight:600;color:var(--ink-brand)}.doc-address{font-size:10px;line-height:1.4}.doc-contact{font-size:9.5px}.doc-foot{font-size:9px;padding-top:8px}.invoice-sheet{font-size:10px;line-height:1.45}.inv-title{font-size:17px;font-weight:600;letter-spacing:.08em;color:var(--ink-brand)}.inv-meta{font-size:10px;margin-top:7px}.inv-meta th{font-weight:500;padding:1px 12px 1px 0}.inv-meta td{font-weight:600;padding:1px 0}.inv-status{font-size:9px;padding:1px 8px;border-radius:4px;background:#ecebf6;color:var(--ink-brand)}.inv-parties{gap:10px;margin:2px 0 12px}.inv-party{padding:8px 10px;line-height:1.5;font-size:10px;border-radius:6px;background:#f8f8fc;border-color:#e6e6ef}.inv-label{font-size:8.5px;letter-spacing:.1em;margin-bottom:3px;color:#6b6b88}.inv-name{font-size:11px;font-weight:600;color:var(--ink)}.inv-items{font-size:10px}.inv-items th{background:var(--ink-brand);font-size:8.5px;padding:6px 9px;letter-spacing:.06em;font-weight:600}.inv-items td{padding:6px 9px;font-size:10px}.inv-items .c{width:34px}.inv-items.small{font-size:9.5px}.inv-items.small th{background:#3b3b5e;padding:5px 8px}.inv-items.small td{padding:5px 8px}.inv-bottom{gap:16px;margin-top:10px}.inv-notes{font-size:9.5px}.inv-notes p{margin:0 0 6px}.inv-totals{width:250px}.inv-totals td{padding:4px 10px;font-size:10px}.inv-totals .grand td{font-size:11.5px;font-weight:600;background:#f3f3f9;color:var(--ink-brand);border-top:1.5px solid var(--ink-brand)}.inv-totals .due td{font-size:10.5px;font-weight:600}.inv-payments{margin-top:12px}.inv-end{margin-top:18px;gap:16px}.inv-terms{font-size:9px;line-height:1.45}.inv-sign{width:180px;font-size:9.5px}.inv-sign-space{height:34px}.inv-sign-line{font-weight:600;padding-top:4px}.inv-stamp{font-size:46px;border-width:5px;font-weight:700}.letter-sheet{font-size:10pt;line-height:1.55}.lt-body p{margin:0 0 8px}.lt-ref{font-size:9pt;margin-bottom:12px}.lt-title{font-size:13pt;font-weight:600;letter-spacing:.12em;color:var(--ink-brand)}.lt-title:after{background:var(--purple);height:2px}.lt-heading{font-size:8.5pt;color:var(--ink-brand)}.lt-subject{border-left-color:var(--ink-brand);font-size:10pt;padding:6px 10px}.lt-table,.lt-itinerary{font-size:9pt}.lt-table th{font-size:8pt}.lt-table th,.lt-table td{padding:5px 8px}.pdf-mode .inv-items td{padding:5px 9px}.doc-scroll{border-radius:8px;background:#e9e9f1}@container (max-width: 640px){.inv-title{font-size:15px}.invoice-sheet .inv-items{font-size:10px}}@media print{html,body{font-size:9.5pt!important;background:#fff!important}@page{size:A4;margin:10mm}.doc-sheet{border-top-width:3px}.invoice-sheet{font-size:8.5pt;line-height:1.4}.inv-title{font-size:14pt}.inv-meta,.inv-items,.inv-items td,.inv-totals td,.inv-party{font-size:8.5pt}.inv-items th{font-size:7pt}.inv-items td{padding:4px 7px}.inv-items th{padding:5px 7px}.inv-totals .grand td{font-size:10pt}.inv-notes,.inv-terms{font-size:7.5pt}.doc-company{font-size:12pt}.doc-address,.doc-contact{font-size:8pt}.doc-foot{font-size:7.5pt}.letter-sheet{font-size:9.5pt;line-height:1.5}.inv-sign-space{height:28px}}@media (max-width: 640px){html,body{font-size:13px}:is(.inline-form,.record-field,.filter-row,.page-header,.login-card,.field-inline,.pa-form,.lead-form,.assign-bar,.modal-body,.settings-form,.template-form,.import-options,.pa-toolbar,.pa-grid,.tk-form,.sp-form) :is(input,select,textarea):not([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=hidden]){min-height:42px;font-size:14px}select:not([multiple]){min-height:42px;font-size:14px}.inline-form button,.assign-bar button,.record-actions button{min-height:42px}.btn-small{min-height:32px}h1,.page>h1,.page-header h1{font-size:17px}}:is(.inline-form,.record-field,.filter-row,.page-header,.login-card,.field-inline,.pa-form,.lead-form,.assign-bar,.modal-body,.settings-form,.template-form,.import-options,.pa-toolbar,.pa-grid,.tk-form,.sp-form) select:not([multiple]),select:not([multiple]){padding-right:30px;text-overflow:ellipsis}button.icon-btn.icon-btn{width:28px;height:28px;min-height:28px;border-radius:6px;background:#fff;color:var(--ink-brand);border:1px solid var(--field-line)}button.icon-btn.icon-btn:hover{background:var(--ink-brand);color:#fff;border-color:var(--ink-brand)}button.icon-btn.tone-edit,button.icon-btn.tone-view,button.icon-btn.tone-stock{color:var(--ink-brand);background:#fff;border-color:var(--field-line)}button.icon-btn.tone-edit:hover,button.icon-btn.tone-view:hover,button.icon-btn.tone-stock:hover{background:var(--ink-brand);border-color:var(--ink-brand);color:#fff}button.icon-btn.tone-delete{color:#c81e1e;background:#fff;border-color:#ecc3c3}button.icon-btn.tone-delete:hover{background:#c81e1e;border-color:#c81e1e;color:#fff}.data-table td,.data-table th{white-space:nowrap}.data-table td{max-width:340px;overflow:hidden;text-overflow:ellipsis}.data-table td:has(button,select,input,.row-actions,.row-actions-cell,a,.badge){overflow:visible}.data-table td.wrap,.data-table td.notes{white-space:normal}@media (max-width: 720px){.data-table td,.data-table th{white-space:normal;max-width:none;overflow:visible}}.row-actions-cell{gap:4px}.detail-table{width:100%;border-collapse:collapse;margin-top:6px}.detail-table th,.detail-table td{padding:8px 4px;border-bottom:1px solid #eeeef5;text-align:left;vertical-align:middle;font-size:12.5px}.detail-table tr:last-child th,.detail-table tr:last-child td{border-bottom:0}.detail-table th{width:34%;max-width:190px;color:#6b6b88;font-weight:500;font-size:11.5px;letter-spacing:.02em;padding-right:12px}.detail-table td{color:var(--ink);font-weight:500;overflow-wrap:anywhere}.detail-table select{min-height:32px;font-size:12px;max-width:100%;width:100%;max-width:280px}.ca-row{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.ca-text{margin-right:2px}a.ca-btn{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:6px;border:1px solid var(--field-line);background:#fff;color:var(--ink-brand);text-decoration:none;transition:background .15s,color .15s,border-color .15s}a.ca-btn:hover{background:var(--ink-brand);border-color:var(--ink-brand);color:#fff}a.ca-wa{color:#128c4a;border-color:#bfe5cf}a.ca-wa:hover{background:#128c4a;border-color:#128c4a;color:#fff}a.ca-call:hover{background:var(--purple);border-color:var(--purple)}button:not([class]),button[class=""]{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--btn-h);padding:0 16px;border:1px solid var(--ink-brand);border-radius:8px;background:var(--ink-brand);color:#fff;font:inherit;font-size:12.5px;font-weight:500;line-height:1.2;letter-spacing:.01em;white-space:nowrap;cursor:pointer;box-shadow:none;margin:2px 0;transition:background .15s,border-color .15s,box-shadow .15s,color .15s}button:not([class]):hover,button[class=""]:hover{background:var(--purple);border-color:var(--purple);box-shadow:0 4px 12px #8a46d947}button:not([class]):active{transform:translateY(1px)}button:not([class]):disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}button:not([class])+button,button.btn-secondary+button:not([class]),button:not([class])+button.btn-secondary,button.btn-secondary+button.btn-secondary{margin-left:8px}.flex-gap>button+button,.doc-actions>button+button,.row-actions>button+button{margin-left:0}button.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--btn-h);padding:0 16px;font-size:12.5px;font-weight:500;border-radius:8px;background:#fff;color:var(--ink-brand);border:1px solid var(--ink-brand);cursor:pointer;white-space:nowrap}button.btn-secondary:hover{background:var(--ink-brand);color:#fff}button.btn-danger-solid,button.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--btn-h);padding:0 16px;font-size:12.5px;font-weight:500;border-radius:8px;cursor:pointer;white-space:nowrap}button.btn-small{display:inline-flex;align-items:center;justify-content:center}.filter-chip,.tk-chip{cursor:pointer;background:#fff;color:var(--ink-soft);border:1px solid var(--field-line)}.filter-chip:hover{border-color:var(--ink-brand);color:var(--ink-brand)}.filter-chip.on,.tk-chip.on{background:var(--ink-brand);border-color:var(--ink-brand);color:#fff}.pa-tab.on{color:var(--ink-brand);border-bottom-color:var(--purple)}.inline-form.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px 14px;align-items:start;box-shadow:none;padding:14px;border:1px solid var(--line);background:#fafafc;margin-bottom:0}.inline-form.form-grid .field-inline{min-width:0;justify-content:flex-start}.inline-form.form-grid input,.inline-form.form-grid select,.inline-form.form-grid textarea{width:100%;min-width:0;font-weight:400;color:var(--ink)}.inline-form.form-grid .field-inline:has(textarea){grid-column:1 / -1}.form-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:6px 0 24px}a.link-btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--btn-h);padding:0 16px;border-radius:8px;font-size:12.5px;font-weight:500;text-decoration:none}a.btn-secondary.link-btn{background:#fff;color:var(--ink-brand);border:1px solid var(--ink-brand)}a.btn-secondary.link-btn:hover{background:var(--ink-brand);color:#fff}.page-header>a:not([class]){color:var(--purple-dark);font-weight:500;font-size:12.5px}.day-row{display:grid!important;grid-template-columns:64px 140px repeat(5,minmax(110px,1fr)) 32px;align-items:center;gap:8px;padding:10px;box-shadow:none;border:1px solid var(--line);margin-bottom:8px;background:#fafafc}.day-row input{min-width:0!important;width:100%}@media (max-width: 900px){.day-row{grid-template-columns:1fr 1fr}}.acc-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));max-width:640px}.acc-form h3{margin:4px 0 10px}.acc-lines-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:18px 0 8px}.acc-lines-head h3{margin:0}.acc-lines{display:flex;flex-direction:column;gap:6px;overflow-x:auto;padding-bottom:4px}.acc-line{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(100px,1fr) minmax(110px,1fr) minmax(110px,1fr) 64px 100px 84px minmax(110px,1fr) 30px;gap:8px;align-items:center;min-width:980px}.acc-line input,.acc-line select{min-width:0!important;width:100%;min-height:34px;font-size:12px;padding:0 9px;border:1px solid var(--field-line);border-radius:8px;background:#fff}.acc-line-head{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b6b88}.acc-items{display:inline-block;max-width:300px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.acc-sign{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:8px 0 14px;text-align:center;font-size:10px}.acc-undo{margin-left:8px}.acc-sheet .muted{font-size:9px}.alert-success{background:#e8f7ee;color:#166534;border:1px solid #bfe5cf;border-radius:8px;padding:9px 14px;margin-bottom:12px}@media (max-width: 720px){.acc-line{grid-template-columns:1fr 1fr;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fafafc}.acc-line-head{display:none}.acc-lines{overflow:visible}}.filter-row>button.filter-chip,.page-header button.filter-chip{background:#fff;color:var(--ink-soft);border:1px solid var(--field-line);min-height:30px;padding:0 12px;font-size:12px;box-shadow:none}.filter-row>button.filter-chip:hover{background:#fff;color:var(--ink-brand);border-color:var(--ink-brand);box-shadow:none}.filter-row>button.filter-chip.on{background:var(--ink-brand);border-color:var(--ink-brand);color:#fff}.filter-row{margin:14px 0}.bill-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:14px}@media (max-width: 800px){.bill-grid{grid-template-columns:1fr}}.bill-plan-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.bill-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:14px 0}.bill-facts>div{background:#f6f6fa;border-radius:6px;padding:8px 10px}.bill-facts span{display:block;font-size:11px;color:#6b6b85}.bill-facts b{font-size:13px}.bill-facts b.warn{color:#b42318}.bill-plans{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.bill-plan-card{position:relative;border:1px solid #dcdce8;border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:6px;background:#fff}.bill-plan-card.current{border-color:#8a46d9;box-shadow:0 0 0 2px #8a46d926}.bill-plan-card h4{margin:0;font-size:14px}.bill-plan-card p{margin:0;font-size:12px}.bill-plan-card button{margin-top:auto;width:100%}.bill-price{font-size:20px;font-weight:700;color:#28284a}.bill-price small{font-size:11px;font-weight:500;color:#6b6b85}.bill-tag{position:absolute;top:10px;right:10px}.stor-top{display:flex;justify-content:space-between;font-size:12px;margin-bottom:6px;gap:8px;flex-wrap:wrap}.stor-track{height:8px;background:#ececf4;border-radius:6px;overflow:hidden}.stor-track>i{display:block;height:100%;background:#8a46d9;border-radius:6px}.stor-track>i.hot{background:#d92d20}.pa-tabs{display:flex;gap:6px;border-bottom:1px solid #e4e4ee;margin-bottom:12px}.pa-tab{background:transparent!important;color:#6b6b85!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;padding:8px 12px!important;box-shadow:none!important}.pa-tab.on{color:#28284a!important;border-bottom-color:#8a46d9!important;font-weight:600}.cd-limit{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:10px 0}.cd-presets{display:flex;gap:6px}.cd-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.cd-pw{display:flex;gap:6px}.cd-pw input{flex:1;min-width:0}.cd-pwform{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px;padding:10px;background:#f6f6fa;border-radius:8px}.link-text{background:none!important;border:0!important;padding:0!important;color:#8a46d9!important;font-weight:600;text-decoration:underline;cursor:pointer;box-shadow:none!important}.sig-box{width:180px;height:70px}.sig-box img{max-width:100%;max-height:100%;object-fit:contain}.inv-sign-space{display:flex;align-items:flex-end;justify-content:center}.inv-sign-img{max-height:46px;max-width:100%;object-fit:contain}.pdf-mode .inv-sign-img{max-height:32px}.buy-card{max-width:420px}.buy-card h2{text-align:center;margin:0 0 12px}.buy-plan{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#f6f6fa;border:1px solid #e4e4ee;border-radius:8px;padding:10px 12px;margin-bottom:14px}.buy-plan small{display:block;color:#6b6b85;font-size:11px;font-weight:400}.buy-price{font-size:17px;font-weight:700;color:#28284a;text-align:right;white-space:nowrap}.buy-price small{display:inline;font-size:11px}.buy-form{display:flex;flex-direction:column;gap:12px}.buy-card .buy-form label{margin:0;display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600}.buy-card .buy-form label small{font-weight:400;color:#6b6b85}.buy-card .buy-form input{margin:0}.buy-card .buy-form button,.buy-pending button{margin-top:6px}.buy-card .hint{text-align:center;font-size:12px;color:#6b6b85;margin:14px 0 0}.buy-pending{display:flex;flex-direction:column;gap:8px;text-align:center}.login-card .subtitle{text-align:center;margin:4px 0 18px}.status-other{display:inline-flex;gap:6px;margin-left:8px;align-items:center;flex-wrap:wrap}.status-other input{min-width:180px}.sig-picker{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.sig-thumb{display:inline-flex;align-items:center;justify-content:center;width:96px;height:34px;border:1px dashed #c9c9dc;border-radius:6px;background:#fff;overflow:hidden}.sig-thumb img{max-width:100%;max-height:100%;object-fit:contain}.sig-thumb em{font-size:10px;color:#8a8aa3;font-style:normal}.sig-file{cursor:pointer;display:inline-flex;align-items:center}.sig-err{color:#b42318;width:100%}.doc-sign-row{display:flex;justify-content:flex-end;margin:22px 0 8px;padding:0 30px}.doc-sign-row .inv-sign{width:220px}.acc-sign .inv-sign-space{display:flex;align-items:flex-end;justify-content:center}.acc-sign .inv-sign-img{max-height:44px}@media print{.sig-picker{display:none!important}}:root{--pa-navy: #28284a;--pa-navy-2: #15152b;--pa-line: #e5e7eb;--pa-bg: #f3f5f9}.pa-shell{display:flex;min-height:100vh;background:var(--pa-bg)}.pa-side{width:252px;flex:0 0 252px;background:linear-gradient(180deg,#1c1c3a,#15152b);color:#cbd5e1;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:40;transition:width .2s}.pa-brand{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 16px 6px}.pa-brand-full{max-width:150px;max-height:48px;background:#fff;border-radius:8px;padding:6px 10px}.pa-brand-mark{display:none;width:34px;height:34px;background:#fff;border-radius:8px;padding:4px}.pa-collapse{background:#ffffff14;border:0;color:#cbd5e1;border-radius:8px;width:32px;height:32px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pa-brand-sub{padding:2px 18px 10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.pa-nav{flex:1;overflow-y:auto;padding:4px 10px 12px}.pa-group{margin-bottom:8px}.pa-group-label{padding:10px 10px 4px;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:#64748b;font-weight:700}.pa-link{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:9px;color:#cbd5e1;text-decoration:none;font-size:13.5px;font-weight:500;position:relative}.pa-link:hover{background:#ffffff12;color:#fff}.pa-link.active{background:#fff;color:var(--pa-navy);font-weight:700}.pa-ico{display:inline-flex;flex:0 0 auto}.pa-badge{margin-left:auto;background:#ef4444;color:#fff;border-radius:999px;font-size:11px;font-weight:700;padding:1px 7px}.pa-side-foot{padding:12px;border-top:1px solid rgba(255,255,255,.08)}.pa-user{display:flex;align-items:center;gap:10px}.pa-avatar{width:36px;height:36px;border-radius:50%;background:#6d5bd0;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex:0 0 auto}.pa-user-meta{min-width:0;display:flex;flex-direction:column;line-height:1.25}.pa-user-meta b{color:#fff;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pa-user-meta small{color:#94a3b8;font-size:11px}.pa-logout{margin-left:auto;background:#ffffff14;color:#e2e8f0;border:0;border-radius:8px;width:34px;height:34px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pa-logout:hover{background:#ef4444}.pa-main{flex:1;min-width:0;display:flex;flex-direction:column}.pa-top{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--pa-line);display:flex;align-items:center;gap:12px;padding:0 22px;height:60px}.pa-top h1{margin:0;font-size:18px;color:#0f172a}.pa-top-right{margin-left:auto;display:flex;align-items:center;gap:8px;position:relative}.pa-burger{display:none;background:none;border:0;cursor:pointer;color:#0f172a;padding:4px}.pa-scrim{display:none}.pa-content{padding:22px;max-width:1280px;width:100%;margin:0 auto;box-sizing:border-box}.pa-shell.rail .pa-side{width:72px;flex-basis:72px}.pa-shell.rail .pa-brand-full,.pa-shell.rail .pa-text,.pa-shell.rail .pa-group-label,.pa-shell.rail .pa-brand-sub,.pa-shell.rail .pa-user-meta{display:none}.pa-shell.rail .pa-brand-mark{display:block}.pa-shell.rail .pa-brand{flex-direction:column;padding-top:14px}.pa-shell.rail .pa-link{justify-content:center}.pa-shell.rail .pa-badge{position:absolute;top:2px;right:4px;margin:0}.pa-shell.rail .pa-user{flex-direction:column}.pa-shell.rail .pa-logout{margin:0}.pa-content input:not([type=checkbox]):not([type=radio]):not([type=file]),.pa-content select,.pa-content textarea,.pub-invoice input,.modal input:not([type=checkbox]),.modal select,.modal textarea{width:100%;box-sizing:border-box;padding:9px 11px;border:1px solid #d1d5db;border-radius:8px;font:inherit;font-size:13px;background:#fff}.pa-content input:focus,.pa-content select:focus,.pa-content textarea:focus{outline:none;border-color:var(--pa-navy);box-shadow:0 0 0 3px #28284a24}.pa-content label{display:block;font-size:11.5px;font-weight:600;color:#4b5563;margin-bottom:5px}.pa-content label.pa-check,.modal label.pa-check{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:500;margin:4px 0}.pa-content input[type=checkbox]{width:16px;height:16px;accent-color:var(--pa-navy)}.pa-card,.pa-form{background:#fff;border-radius:12px;padding:18px;box-shadow:0 1px 2px #0f172a0d,0 6px 18px #0f172a0d;margin-bottom:16px}.pa-card h3,.pa-form h3{margin:0 0 12px;font-size:15px}.pa-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.pa-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.pa-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pa-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 14px}.pa-span{grid-column:1 / -1}.pa-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.pa-toolbar p{margin:0;flex:1 1 260px}.pa-filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.pa-filter input{flex:1 1 240px;width:auto!important}.pa-filter select{width:auto!important;min-width:160px}.pa-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:18px}.pa-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pa-overview .span-2{grid-column:span 2}.pa-table-wrap{background:#fff;border-radius:12px;overflow-x:auto;box-shadow:0 1px 2px #0f172a0d,0 6px 18px #0f172a0d;margin-bottom:16px}.pa-table-wrap .data-table{width:100%;min-width:640px}.pa-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.pa-row-actions,.pa-cell-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.pa-btn{text-decoration:none}.pa-btn.small{padding:5px 10px;min-height:0;font-size:12px}.pa-icon-only{padding:8px;min-height:0}.pa-crumb{margin-bottom:12px;font-size:13px}.pa-co-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.pa-co-head h2{margin:0}.pa-tabs{display:flex;gap:4px;flex-wrap:wrap;margin:14px 0 16px;border-bottom:1px solid var(--pa-line);overflow-x:auto}.pa-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:10px 14px;font:inherit;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;margin-bottom:-1px;white-space:nowrap}.pa-tabs button.active,.pa-tabs button.on{color:var(--pa-navy);border-bottom-color:var(--pa-navy)}.pa-kv{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px dashed var(--pa-line);font-size:13px}.pa-kv span{color:#6b7280}.pa-kv b{text-align:right;font-weight:600;overflow-wrap:anywhere}.pa-line{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #f1f5f9;font-size:13px}.pa-perms{display:grid;gap:2px;margin-top:6px}.pa-pick{max-height:320px;overflow-y:auto;border:1px solid var(--pa-line);border-radius:8px;padding:6px 10px;margin:10px 0}.pa-modal{max-width:560px;width:calc(100% - 24px);max-height:90vh;overflow-y:auto;background:#fff;border-radius:12px;padding:20px;box-sizing:border-box}.pa-img-box{height:96px;border:1px dashed #cbd5e1;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#f8fafc;margin:6px 0 8px;overflow:hidden}.pa-img-box img{max-width:100%;max-height:100%;object-fit:contain}.pa-img-pick small{display:block;margin-top:4px}.pw-field{position:relative;display:block}.pw-field input{padding-right:42px!important;width:100%;box-sizing:border-box}.pw-eye{position:absolute!important;right:4px;top:50%;transform:translateY(-50%);width:34px!important;height:34px;margin:0!important;padding:0!important;background:none!important;border:0!important;color:#6b7280!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:6px}.pw-eye:hover{color:#111827!important;background:#f1f5f9!important}.pinv-actions{margin-bottom:12px}.pinv-wa{color:#128c7e!important;border-color:#128c7e!important}.pinv-sent{font-size:12px;color:#64748b;margin:-4px 0 10px}.pinv-options{padding:14px 18px}.pinv-opt-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:6px 0}.pinv-opt-row+.pinv-opt-row{border-top:1px solid #f1f5f9}.pinv-modal{max-width:940px!important}.pinv-dlg label{display:block;margin:10px 0 4px;font-size:12px;font-weight:600}.pinv-dlg .modal-actions{display:flex;gap:8px;margin-top:14px}.pinv-lines{margin-top:14px;display:grid;gap:8px}.pinv-line{display:grid;grid-template-columns:3fr 1fr .8fr 1fr 1fr .8fr 38px;gap:8px;align-items:center}.pinv-line-head{font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase}.pinv-total-preview{margin-top:12px;padding:10px 14px;background:#f1f5f9;border-radius:8px;font-size:13px;text-align:right}.pinv-logos{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.pinv-logo{max-height:64px;max-width:46%;object-fit:contain}.pinv-logos .pinv-logo:last-child:not(:first-child){margin-left:auto}.pub-invoice{max-width:960px;margin:0 auto;padding:18px 12px 40px}.buy-page{align-items:flex-start;padding:24px 12px}.buy-card.buy-wide{width:100%;max-width:760px;box-sizing:border-box}.buy-card fieldset{border:1px solid var(--pa-line);border-radius:10px;margin:14px 0;padding:6px 14px 14px}.buy-card legend{font-size:12px;font-weight:700;color:var(--pa-navy);padding:0 6px;text-transform:uppercase;letter-spacing:.05em}.buy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.buy-grid .buy-span{grid-column:1 / -1}.buy-grid label small{font-weight:400;color:#6b7280}.buy-grid textarea{width:100%;box-sizing:border-box;padding:10px;border:1px solid #d1d5db;border-radius:6px;font:inherit}.buy-gst{background:#f1f5f9;padding:8px 12px;border-radius:8px}@media (max-width: 960px){.pa-overview,.pa-three{grid-template-columns:1fr}.pa-overview .span-2{grid-column:auto}.pa-two{grid-template-columns:1fr}}@media (max-width: 860px){.pa-side{position:fixed;left:0;top:0;transform:translate(-100%);transition:transform .22s;width:270px;flex-basis:auto}.pa-shell.menu-open .pa-side{transform:none;box-shadow:0 0 40px #0006}.pa-shell.menu-open .pa-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:35}.pa-burger{display:inline-flex}.pa-collapse{display:none}.pa-content{padding:14px 12px}.pa-top{padding:0 12px}.pa-shell.rail .pa-side{width:270px}.pa-shell.rail .pa-text,.pa-shell.rail .pa-brand-sub{display:initial}.pa-shell.rail .pa-group-label,.pa-shell.rail .pa-brand-full{display:block}.pa-shell.rail .pa-brand-mark{display:none}.pa-shell.rail .pa-user-meta{display:flex}.pinv-line{grid-template-columns:1fr 1fr}.pinv-line-head{display:none}.pinv-line>:first-child{grid-column:1 / -1}}@media (max-width: 560px){.buy-grid{grid-template-columns:1fr}.login-card.buy-card{padding:22px 16px}}.buy-card .buy-grid label small,.buy-card .buy-form label small{display:inline!important;margin-left:4px}.buy-card .buy-form label{display:block;margin-top:10px;font-size:12px;font-weight:600}.buy-card .buy-form input,.buy-card .buy-form select{margin-top:4px}.pa-content textarea{min-height:64px;resize:vertical}.rbox{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-family:var(--font)}.rbox.is-mobile{right:14px;bottom:calc(var(--bar-h, 62px) + 30px + env(safe-area-inset-bottom))}button.rbox-fab{position:relative;width:54px;height:54px;border-radius:50%;border:0;display:grid;place-items:center;color:#fff;cursor:pointer;background:var(--brand-grad);box-shadow:0 10px 24px #28284a61;transition:transform .15s}.rbox-fab:hover{transform:translateY(-2px)}.rbox-fab:active{transform:scale(.95)}.rbox-fab.ring{animation:rboxring 1s ease-in-out 6}@keyframes rboxring{0%,to{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(6deg)}}.rbox-count{position:absolute;top:-4px;right:-4px;min-width:21px;height:21px;padding:0 5px;border-radius:11px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;border:2px solid #fff}.rbox-panel{width:390px;max-width:calc(100vw - 28px);height:min(600px,calc(100vh - 120px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 50px #1b1b3347;overflow:hidden;animation:rboxin .18s ease-out}@keyframes rboxin{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rbox-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;background:var(--brand-grad);color:#fff}.rbox-head b{display:block;font-size:15px}.rbox-head small{display:block;font-size:11.5px;opacity:.85;margin-top:2px}.rbox-x{background:#ffffff26;border:0;color:#fff;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;cursor:pointer}.rbox-filters{display:flex;flex-wrap:wrap;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);background:#fafafd}.rbox-filters button{flex:none;border:1px solid var(--field-line);background:#fff;color:var(--ink-soft);padding:4px 10px;border-radius:8px;font-size:12px;cursor:pointer;font-family:inherit}.rbox-filters button.on{background:var(--brand);color:#fff;border-color:var(--brand)}.rbox-body{flex:1;overflow-y:auto;padding:4px 12px 14px;background:#f5f5f9}.rbox-empty{color:#8a8aa3;font-size:13px;text-align:center;padding:28px 12px;line-height:1.5}.rbox-err{background:#fef2f2;color:#b91c1c;border-radius:8px;padding:8px 10px;margin-top:10px;font-size:12.5px;cursor:pointer}.rbox-group{position:sticky;top:0;z-index:1;margin:10px -12px 6px;padding:5px 12px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6b6b85;background:#f5f5f9}.rbox-group.overdue{color:#dc2626}.rbox-group.today{color:#8a46d9}.rbox-msg{display:flex;gap:8px;margin-bottom:9px;align-items:flex-start}.rbox-ico{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand);margin-top:2px}.rbox-msg.overdue .rbox-ico{background:#fee2e2;color:#dc2626}.rbox-msg.today .rbox-ico{background:#ede4fb;color:#8a46d9}.rbox-bubble{flex:1;min-width:0;background:#fff;border:1px solid var(--line);border-radius:2px 8px 8px;padding:8px 10px;box-shadow:var(--shadow-sm)}.rbox-msg.overdue .rbox-bubble{border-left:3px solid #ef4444}.rbox-line{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.rbox-line b{font-size:13px;color:var(--ink);overflow-wrap:anywhere}.rbox-kind{flex:none;font-size:10px;color:#6b6b85;background:var(--brand-soft);padding:1px 6px;border-radius:6px}.rbox-text{font-size:12.5px;color:var(--ink-soft);margin-top:3px;overflow-wrap:anywhere;white-space:pre-wrap}.rbox-sub{font-size:11.5px;color:#8a8aa3;margin-top:2px}.rbox-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:11px;color:#8a8aa3;margin-top:5px}.rbox-actions{display:flex;gap:6px;margin-top:7px}.rbox-actions a,.rbox-actions button{font-family:inherit;font-size:11.5px;padding:3px 10px;border-radius:8px;border:1px solid var(--field-line);background:#fff;color:var(--ink);cursor:pointer;text-decoration:none;line-height:1.5}.rbox-actions .ok{background:var(--brand);color:#fff;border-color:var(--brand)}@media (max-width: 900px){.rbox-panel{width:calc(100vw - 28px);height:min(70vh,calc(100vh - 190px))}}.opt-select{display:inline-flex;flex-direction:column;gap:6px;align-items:flex-start}.opt-add{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center}.opt-add input{min-width:180px}.opt-err{flex-basis:100%;color:#b91c1c;font-size:12px}.note-place{flex:1 1 220px;min-width:160px}button.rem-toggle{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--ink-soft);border:1px solid var(--field-line)}button.rem-toggle.on{background:var(--brand-soft);color:var(--brand-2);border-color:var(--brand-2)}.rem-chip{display:inline-flex;align-items:center;gap:4px;margin-left:8px;font-size:11.5px;padding:1px 8px;border-radius:8px;background:var(--brand-soft);color:var(--brand-2)}.rem-chip.over{background:#fee2e2;color:#b91c1c}.rem-chip.done{background:#dcfce7;color:#166534;text-decoration:line-through}.rem-list li{align-items:flex-start;gap:10px}.rem-bell{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand-2)}.rem-bell.over{background:#fee2e2;color:#dc2626}.doc-tag{display:inline-block;font-size:10.5px;padding:1px 7px;border-radius:8px;background:var(--brand-soft);color:var(--ink-soft);margin-left:4px}.doc-tag.staff{background:#e0f2fe;color:#075985}.doc-tag.verified{background:#dcfce7;color:#166534}.doc-files{display:flex;flex-direction:column;gap:4px}.doc-file{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px}.doc-up{display:inline-flex;gap:6px;flex-wrap:wrap}.file-btn{position:relative;overflow:hidden;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.file-btn input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%}.file-btn.busy{opacity:.6;pointer-events:none}@media print{.rbox{display:none!important}}.app-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0 0 14px}.app-facts>div{min-width:0}.app-facts dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#8a8aa3;margin-bottom:2px}.app-facts dd{margin:0;font-size:13.5px;font-weight:500;overflow-wrap:anywhere}.app-status{display:flex;flex-direction:column;gap:4px;font-size:12px;max-width:320px}.app-people{display:flex;flex-wrap:wrap;gap:8px}.app-person{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--field-line);border-radius:20px;background:#fff;cursor:pointer;font-size:13px;margin:0}.app-person input{flex:none;min-width:0;width:auto}.docs-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}.docs-head h3{margin:0 0 2px}.docs-head .muted{margin:0;font-size:12.5px}.docs-tabs{display:inline-flex;gap:4px;padding:4px;background:var(--brand-soft);border-radius:10px;flex-wrap:wrap}.docs-tab{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:0;border-radius:8px;background:transparent;color:var(--ink-soft);font-weight:600;font-size:13px;cursor:pointer;font-family:inherit}.docs-tab.on{background:#fff;color:var(--brand-2);box-shadow:0 1px 4px #0000001f}.docs-count{font-size:11px;font-weight:700;min-width:20px;text-align:center;padding:1px 7px;border-radius:10px;background:var(--brand-soft);color:var(--brand-2)}.docs-tab.on .docs-count{background:var(--brand-2);color:#fff}.docs-upload{display:flex;flex-direction:column;gap:10px;padding:14px;margin-bottom:14px;border:1px dashed var(--field-line);border-radius:10px;background:#fbfcff}.docs-upload-title{font-weight:600;font-size:13.5px}.docs-fields{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.docs-field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink-soft);flex:1 1 170px;min-width:150px;margin:0}.docs-field input:not([type=file]),.docs-field select,.docs-field .opt-select{width:100%}.docs-field .opt-select select{width:100%}.docs-field-file{flex:2 1 240px}.docs-field-file input[type=file]{width:100%;max-width:100%}.docs-fields>button[type=submit]{flex:0 0 auto;padding:9px 26px}.docs-hint{font-size:11.5px;color:#8a8aa3}.docs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.docs-row{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--field-line);border-radius:10px;background:#fff}.docs-row:hover{border-color:#c7cbe6;box-shadow:0 2px 8px #28284a0f}.docs-ext{flex:none;width:46px;height:46px;border-radius:10px;display:grid;place-items:center;font-size:11px;font-weight:700;background:var(--brand-soft);color:var(--brand-2)}.docs-ext.verified{background:#dcfce7;color:#166534}.docs-ext.staff{background:#e0f2fe;color:#075985}.docs-info{flex:1 1 auto;min-width:0}.docs-name{font-weight:600;font-size:14px;overflow-wrap:anywhere}.docs-meta{font-size:12px;color:#8a8aa3;margin-top:2px}.docs-chips{display:flex;gap:6px;align-items:center;margin-top:6px;flex-wrap:wrap}.docs-chips .doc-tag{margin-left:0}.docs-actions{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.docs-btns{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;align-items:center}.docs-btns a.btn-small{text-decoration:none;display:inline-flex;align-items:center}.docs-empty{padding:26px 12px;text-align:center;color:#8a8aa3;font-size:13px;border:1px dashed var(--field-line);border-radius:10px}.vis-switch{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:12px;color:var(--ink-soft);-webkit-user-select:none;user-select:none;margin:0}.vis-switch input{position:absolute;opacity:0;width:0;height:0;min-width:0;flex:none}.vis-track{position:relative;flex:none;width:34px;height:19px;border-radius:19px;background:#cbd5e1;transition:background .15s}.vis-knob{position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0000004d;transition:transform .15s}.vis-switch.on .vis-track{background:#16a34a}.vis-switch.on .vis-knob{transform:translate(15px)}.vis-switch.on .vis-label{color:#166534;font-weight:600}.vis-switch input:focus-visible+.vis-track{outline:2px solid var(--brand-2);outline-offset:2px}.vis-switch input:disabled+.vis-track{opacity:.55;cursor:not-allowed}@media (max-width: 900px){.app-facts{grid-template-columns:1fr}.docs-tabs{width:100%}.docs-tab{flex:1 1 auto;justify-content:center}.docs-row{flex-wrap:wrap;align-items:flex-start}.docs-actions{flex:1 1 100%;align-items:flex-start}.docs-btns{justify-content:flex-start}}.portal-doc-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.docs-fields{align-items:flex-start}.docs-field input:not([type=file]),.docs-field select{height:40px;box-sizing:border-box;padding:0 12px;border:1px solid var(--field-line);border-radius:8px;background-color:#fff;font-family:inherit;font-size:13.5px}.docs-field-file input[type=file]{height:40px}.docs-fields>button[type=submit]{height:40px;align-self:flex-end;margin-top:18px}.team-panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin-bottom:12px;box-shadow:0 1px 2px #1b1b330a}.tp-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tp-stat{display:inline-flex;align-items:baseline;gap:8px;padding:6px 12px;min-height:34px;background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer;font-family:inherit;color:var(--ink);box-shadow:none}.tp-stat b{font-size:16px;font-weight:700;color:var(--brand);line-height:1}.tp-stat span{font-size:12px;font-weight:500;color:var(--ink-soft)}.tp-stat.unassigned b{color:#dc2626}.tp-stat:hover{border-color:var(--brand)}.tp-stat.active{border-color:var(--brand);background:var(--brand-soft)}.tp-dept{display:inline-flex;align-items:center;gap:8px;margin:0 0 0 auto;font-size:12px;font-weight:600;color:var(--ink-soft)}.tp-dept select{min-width:200px;max-width:280px;height:34px;padding:4px 28px 4px 10px;font-size:12.5px}.tp-block{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.tp-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ink);margin-bottom:8px}.tp-title .muted{font-weight:400}.tp-back{margin-left:auto;padding:3px 10px;min-height:26px;font-size:12px;font-weight:600;color:var(--brand);background:transparent;border:1px solid var(--line);border-radius:8px;cursor:pointer;box-shadow:none}.tp-back:hover{border-color:var(--brand);background:var(--brand-soft)}.tp-row{display:flex;flex-wrap:wrap;gap:6px}.tp-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 8px 4px 6px;min-height:36px;max-width:100%;background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer;font-family:inherit;color:var(--ink);text-align:left;box-shadow:none}.tp-pill:not(.staff){padding-left:10px}.tp-pill:hover{border-color:var(--brand)}.tp-pill.active{border-color:var(--brand);background:var(--brand-soft)}.tp-avatar{flex:0 0 auto;width:24px;height:24px;border-radius:8px;background:var(--brand-tint);color:var(--brand);font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.tp-pill.active .tp-avatar{background:var(--brand);color:#fff}.tp-name{display:flex;flex-direction:column;min-width:0;font-size:12px;font-weight:600;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-pill:not(.staff) .tp-name{flex-direction:row}.tp-name small{font-size:10px;font-weight:400;color:var(--ink-soft)}.tp-badge{flex:0 0 auto;min-width:24px;padding:1px 7px;border-radius:8px;background:var(--brand-soft);color:var(--brand);font-size:11px;font-weight:700;text-align:center}.tp-pill.active .tp-badge{background:var(--brand);color:#fff}.lead-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.lead-filters .lf-search{flex:1 1 260px;min-width:200px;max-width:420px}.lead-filters select{height:var(--field-h);max-width:220px}.lead-filters .lf-count{margin-left:auto;font-size:12px;white-space:nowrap}.tp-dept select,.lead-filters select{padding-top:0;padding-bottom:0}.assign-bar.ab2{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:10px 12px;margin-bottom:12px}.ab2 .ab-head{display:flex;align-items:center;gap:10px}.ab2 .ab-sel{font-size:12px;color:var(--ink-soft);white-space:nowrap}.ab2 .ab-clear{padding:3px 10px;min-height:26px}.ab2 .ab-group{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ab2 .ab-group select{height:34px;min-width:150px;max-width:220px;font-size:12.5px;padding-top:0;padding-bottom:0}.ab2 .ab-group button{height:34px;padding:0 14px;white-space:nowrap}.ab2 .ab-dept{padding-left:18px;border-left:1px solid var(--line)}.ab2 .ab-label{font-size:12px;font-weight:600;color:var(--ink-soft)}.ab2 .ab-split{flex:1 1 100%;display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px dashed var(--line)}.ab2 .ab-msg{flex:1 1 100%;font-size:12px;color:#166534}.table-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;border-top:1px solid var(--line);background:#fff;font-size:12px}.table-pager .tp-ctrl{display:inline-flex;align-items:center;gap:8px}.table-pager select{height:32px;min-width:96px;padding:0 26px 0 10px;font-size:12px}.table-pager .tp-btn{width:32px;height:32px;min-height:32px;padding:0;font-size:16px;line-height:1}.table-pager .tp-page{min-width:54px;text-align:center;font-weight:600;color:var(--ink)}@media (max-width: 900px){.team-panel{padding:10px}.tp-dept{flex:1 1 100%;margin:4px 0 0;justify-content:space-between}.tp-dept select{flex:1;min-width:0;max-width:none}.tp-stat{flex:1 1 calc(50% - 4px);justify-content:center}.tp-row{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding-bottom:4px;margin:0 -2px}.tp-pill{flex:0 0 auto;scroll-snap-align:start;max-width:70vw}.tp-back{margin-left:0}.lead-filters .lf-search{flex:1 1 100%;max-width:none}.lead-filters select{flex:1 1 calc(50% - 4px);max-width:none;min-width:0;width:auto}.lead-filters .lf-count{flex:1 1 100%;margin-left:0;text-align:right}.assign-bar.ab2{gap:10px}.ab2 .ab-head,.ab2 .ab-group{flex:1 1 100%}.ab2 .ab-group select{flex:1 1 100%;max-width:none}.ab2 .ab-group button{flex:1 1 calc(50% - 4px)}.ab2 .ab-dept{padding-left:0;border-left:0;padding-top:10px;border-top:1px dashed var(--line)}.ab2 .ab-label{flex:1 1 100%}.table-pager{padding:10px;justify-content:center}}.portal-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.portal-actions .btn-small{margin:0;white-space:nowrap}.btn-small.btn-danger-outline{background:#fff!important;color:#b91c1c!important;border:1px solid #fca5a5!important}.btn-small.btn-danger-outline:hover{background:#fef2f2!important;border-color:#dc2626!important}.badge.badge-ok{background:#dcfce7;color:#166534}.role-head-fields{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.role-head-fields .rh-field{display:flex;flex-direction:column;gap:4px;flex:0 1 260px;min-width:200px;margin:0}.role-head-fields .rh-field.rh-grow{flex:1 1 280px}.role-head-fields .rh-field>span{font-size:12px;font-weight:600;color:var(--ink-soft)}.role-head-fields .rh-field input,.role-head-fields .rh-field select{width:100%}.role-head-fields .rh-field input:disabled,.role-head-fields .rh-field select:disabled{background:#f3f3f9;color:var(--ink-soft);cursor:not-allowed}.role-save-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.alert-ok{background:#dcfce7;color:#166534;border:1px solid #bbf7d0;border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:13px}@media (max-width: 900px){.role-head-fields .rh-field,.role-head-fields .rh-field.rh-grow{flex:1 1 100%}.role-save-row button{flex:1 1 calc(50% - 4px)}}.wf-group{margin-bottom:12px}.wf-item{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.wf-item .row-actions-cell{display:flex;gap:6px;align-items:center}.wf-form .wf-action{display:flex;gap:8px;flex-wrap:wrap;width:100%}.wf-form .wf-action input{flex:1 1 260px}@media (max-width: 900px){.wf-item{flex-direction:column;align-items:stretch}}.quick-tpls{display:flex;flex-wrap:wrap;gap:6px;width:100%}.chip-btn{padding:4px 10px;min-height:28px;font-size:12px;font-weight:600;background:#fff!important;color:var(--brand)!important;border:1px solid var(--line)!important;border-radius:8px;cursor:pointer;box-shadow:none!important}.chip-btn:hover,.chip-btn.on{border-color:var(--brand)!important;background:var(--brand-soft)!important}.lead-switch{display:inline-flex;align-items:center;gap:8px;border:1px solid #d1d5db;background:#f3f4f6;color:#374151;border-radius:999px;padding:3px 12px 3px 4px;cursor:pointer;font-size:12.5px;font-weight:600}.lead-switch .lead-switch-knob{width:18px;height:18px;border-radius:50%;background:#9ca3af;display:inline-block;transition:background .15s}.lead-switch.on{background:#ecfdf5;border-color:#6ee7b7;color:#047857}.lead-switch.on .lead-switch-knob{background:#10b981}.lead-switch.off{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.lead-switch.off .lead-switch-knob{background:#ef4444}.lead-switch:disabled{opacity:.6;cursor:not-allowed}.lead-depts-page .row-off td{opacity:.65}.app-shell.is-desktop .app-content:has(.sticky-head-wrap){padding-bottom:96px}.app-shell.is-desktop .app-content:has(.sticky-head-wrap[data-fit="1"]){overflow:visible}.app-shell.is-mobile .app-content:has(.sticky-head-wrap){padding-bottom:calc(var(--bar-h, 62px) + 96px + env(safe-area-inset-bottom,0px))}.app-shell.is-desktop .table-wrap.sticky-head-wrap[data-fit="1"]{overflow:visible}.app-shell.is-desktop .table-wrap.sticky-head-wrap:not([data-fit="1"]){overflow:auto;max-height:calc(100vh - var(--sticky-top, 0px) - 24px)}.app-shell.is-desktop .sticky-head-wrap:not([data-fit="1"]) .sticky-head thead th{top:0}.sticky-head thead th{position:sticky;top:var(--sticky-top, 0px);z-index:6;background:#f6f6fb;box-shadow:0 1px 0 var(--line, #e3e3ee)}.sticky-head thead th:first-child{border-top-left-radius:8px}.sticky-head thead th:last-child{border-top-right-radius:8px}.sticky-head tbody tr:last-child td:first-child{border-bottom-left-radius:8px}.sticky-head tbody tr:last-child td:last-child{border-bottom-right-radius:8px}.sticky-head-wrap{background:#fff}.perf-table th,.perf-table td{padding-left:9px;padding-right:9px}
