/* INPROX HRMS 1.6.0 · AMS-style workspace. No external assets or frameworks. */
:root{--hr-brand:#571463;--hr-deep:#4b1857;--hr-page:#ece7f0;--hr-border:#cbbfd2;--hr-muted:#594961}
.hrms-ams,.hrms-ams-auth{--navy:#351741;--navy-2:#572064;--blue:#571463;--blue-soft:#f1e7f6;--gold:#8c519b;--bg:#ece7f0;--text:#25172f;--muted:#594961;--line:#d6c9dd;--shadow:0 3px 12px #2812370a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5;color:var(--text);background:var(--bg)}
.hrms-ams [hidden],.hrms-ams-auth [hidden]{display:none!important}
.hrms-ams .sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hrms-ams :focus-visible,.hrms-ams-auth :focus-visible{outline:3px solid #9f73b1;outline-offset:2px}
.ams-skip-link{position:fixed;left:12px;top:-90px;background:#fff;color:#571463;padding:12px;z-index:120;border-radius:6px}.ams-skip-link:focus{top:8px}
.hrms-ams .sidebar.ams-sidebar{width:244px;position:fixed;inset:0 auto 0 0;height:100dvh;background:#fff;color:#3b2c46;border-right:1px solid var(--hr-border);box-shadow:none;overflow:hidden;display:flex;flex-direction:column;z-index:50;transform:none;transition:transform .18s}
.ams-sidebar-brand{padding:22px 20px 15px;border-bottom:1px solid #ddd1e4;position:relative}
.ams-logo-link{display:block;max-width:160px;margin:0 0 8px}.ams-logo-link img{display:block;width:142px;height:auto;max-height:46px;object-fit:contain;object-position:left}
.ams-brand-subtitle{display:block;font-size:10px;letter-spacing:.19em;color:#654771;font-weight:800}
.ams-sidebar-hide{position:absolute;top:18px;right:10px;border:0;background:transparent;color:#654771;padding:5px;border-radius:6px;cursor:pointer;display:grid;place-items:center}.ams-sidebar-hide:hover{background:#f1e8f6}
.ams-sidebar-user{display:block;border-top:1px solid #e5d9eb;margin-top:17px;padding-top:12px}.ams-sidebar-user strong,.ams-sidebar-user span{display:block}.ams-sidebar-user strong{font-size:13px;color:#291832;overflow-wrap:anywhere}.ams-sidebar-user span{font-size:11px;color:#654f70;margin-top:3px}
.ams-menu-search{padding:12px 16px 6px}.ams-menu-search input{width:100%;padding:8px 10px;border:1px solid #b49dbf;border-radius:7px;color:#392544;background:#f3edf7;font:inherit;font-size:12px}
.ams-navigation{padding:4px 10px 18px;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#cbb9d4 transparent}
.ams-nav-item,.ams-group-head{display:flex;align-items:center;gap:9px;width:100%;border:0;border-radius:7px;padding:10px 11px;margin:2px 0;background:transparent;color:#41264e;font-size:12px;font-weight:650;text-align:left;cursor:pointer;line-height:1.5}
.ams-nav-item svg,.ams-group-head svg{flex:0 0 18px}.ams-nav-item:hover,.ams-group-head:hover{background:#eee3f3;color:#571463}.ams-nav-item.active{background:#571463;color:#fff}.ams-nav-group{margin:4px 0}.ams-group-head span:not(.ams-chevron){flex:1}.ams-chevron{display:grid;place-items:center;flex:0 0 13px;transition:transform .15s}.ams-chevron svg{width:12px;height:12px}.ams-group-head[aria-expanded=true] .ams-chevron{transform:rotate(90deg)}
.ams-group-body{margin:2px 0 5px 18px;padding-left:8px;border-left:1px solid #e4d5ea}.ams-group-body .ams-nav-item{padding:8px 10px;font-size:12px;font-weight:550}.ams-group-body .ams-nav-item.active{font-weight:700}.ams-menu-empty{color:#6a5475;font-size:12px;padding:12px}
.ams-sidebar-footer{padding:10px 16px 14px;background:#fff;border-top:1px solid #ddd1e4}.ams-sidebar-footer form{margin:0}.ams-sidebar-footer button{display:flex;gap:9px;align-items:center;border:0;background:transparent;color:#41264e;padding:7px 4px;font-weight:650;font-size:12px;cursor:pointer}.ams-sidebar-footer small{display:block;font-size:10px;color:#7b6687;margin:3px 4px 0}
.hrms-ams .main-panel{margin-left:244px;min-width:0}.hrms-ams .topbar.ams-topbar{height:70px;padding:0 24px;background:#fff;border-bottom:2px solid #571463;box-shadow:none;backdrop-filter:none}.ams-topbar-left{display:flex;gap:13px;align-items:center;min-width:0}.ams-workspace-context{display:grid;gap:3px;min-width:0}.ams-workspace-context small{font-size:10px;letter-spacing:.18em;font-weight:750;color:#694973}.ams-workspace-context strong{font-size:14px;color:#2f193a}.ams-workspace-date{border:1px solid #d8c8e1;border-radius:22px;padding:7px 11px;font-size:11px;white-space:nowrap;color:#4c3857}
.hrms-ams .topbar .avatar{width:34px;height:34px;background:#ede0f3;color:#571463;font-size:12px}.hrms-ams .icon-btn{display:grid;place-items:center;color:#5b3369;border:1px solid #dfd1e7;background:#fff;font-size:16px}.hrms-ams .icon-btn:hover{background:#f1e7f6}
.hrms-ams .content{max-width:1760px;padding:24px 25px 42px;margin:auto;min-width:0}.hrms-ams .page-header{align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:18px}.hrms-ams .page-header>div:first-child{display:block;min-width:0}.hrms-ams .page-header h1{font-size:24px;line-height:1.25;color:#32143e;font-weight:750;margin:0 0 5px;letter-spacing:-.025em}.hrms-ams .page-header p{font-size:12px;color:#63516f;margin:0;line-height:1.5}.hrms-ams .page-action-slot,.hrms-ams .page-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.hrms-ams .page-action-slot:empty{display:none}
.hrms-ams .card{border:1px solid #cbbfd2;border-radius:12px;background:#fff;box-shadow:0 2px 8px #28123707}.hrms-ams .card-header{padding:17px 19px;border-bottom:1px solid #d8cde0;gap:12px;flex-wrap:wrap}.hrms-ams .card-header h3{font-size:15px;color:#291632;font-weight:750}.hrms-ams .card-header p{font-size:12px;color:#63516f;line-height:1.5}.hrms-ams .card-footer{border-color:#d8cde0}
.hrms-ams .btn,.hrms-ams-auth .btn{font-size:12px;font-weight:650;padding:10px 14px;border-radius:8px;box-shadow:none;transform:none;min-height:38px}.hrms-ams .btn-primary,.hrms-ams-auth .btn-primary{background:#571463;color:#fff;border:1px solid #571463;box-shadow:none}.hrms-ams .btn-primary:hover,.hrms-ams-auth .btn-primary:hover{background:#451050;border-color:#451050}.hrms-ams .btn-secondary,.hrms-ams-auth .btn-secondary{background:#fff;border:1px solid #b69fc3;color:#4a235b}.hrms-ams .btn-secondary:hover{background:#f3eafa;border-color:#9674a5}.hrms-ams .btn-ghost{color:#571463}.hrms-ams .btn-sm{font-size:11px;min-height:30px;padding:6px 10px}.hrms-ams :is(button,.btn):disabled{opacity:.55;cursor:not-allowed}
.hrms-ams :is(.form-grid,.filter-bar,.inline-form,.stack-form) label{font-size:12px;color:#493354;line-height:1.5;font-weight:650}.hrms-ams :is(.form-grid,.filter-bar,.inline-form,.stack-form,.attendance-table,.role-fields,.popover-form) :is(input,select,textarea){border:1px solid #bba8c6;border-radius:7px;background:#fff;color:#25172f;font-size:13px;min-height:39px;padding:8px 10px;font-family:inherit}.hrms-ams input:is([type=checkbox],[type=radio]){accent-color:#571463;min-height:0!important;width:auto}.hrms-ams .form-grid input:focus,.hrms-ams .form-grid select:focus,.hrms-ams .form-grid textarea:focus{border-color:#571463;box-shadow:0 0 0 3px #eadbef}.hrms-ams :is(.form-grid,.stack-form) label small{font-size:11px;color:#63516f}
.hrms-ams table{font-size:12px;color:#2b1d35}.hrms-ams thead th{background:#4c215a;color:#fff;text-transform:none;font-size:12px;font-weight:650;letter-spacing:0;white-space:nowrap}.hrms-ams th,.hrms-ams td{padding:12px;border-bottom:1px solid #e3d9e9}.hrms-ams tbody tr:hover{background:#faf6fc}.hrms-ams .table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.hrms-ams .person-cell strong{font-size:12px}.hrms-ams .person-cell small,.hrms-ams .table-sub{font-size:11px;line-height:1.45;color:#65536f;display:block;margin-top:3px}.hrms-ams .subnav a{font-size:12px;padding:11px 13px}.hrms-ams .subnav a.active{color:#571463;border-color:#571463}.hrms-ams .badge{font-size:10px}.hrms-ams .alert{font-size:13px;line-height:1.6}.hrms-ams .alert ul{margin:5px 0 0;padding-left:18px}.hrms-ams .request-item strong{font-size:12px}.hrms-ams .request-item span{font-size:11px}.hrms-ams .muted{color:#65536f}.hrms-ams .avatar{background:#efe3f5;color:#571463}.hrms-ams .eyebrow{color:#754682;font-size:10px}.hrms-ams .section-title{background:#f1e8f6;color:#4b2d58}.hrms-ams .permission-title{background:#f2e9f6;color:#4c3159}
/* Main dashboard follows the existing AMS white-sidebar/lavender-workspace layout. */
.ams-welcome{background:#4b1857;border:1px solid #571463;color:#fff;border-radius:12px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.ams-welcome h2{color:#fff;font-size:24px;line-height:1.3;margin:0 0 6px;font-weight:750;letter-spacing:-.02em}.ams-welcome p{color:#f0e6f4;font-size:12px;line-height:1.5;margin:0}.ams-welcome-tag{border:1px solid #ac87b7;border-radius:20px;font-size:10px;letter-spacing:.08em;padding:8px 12px;white-space:nowrap}
.ams-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 10px}.ams-section-heading h2{font-size:16px;color:#321a3d;margin:0;font-weight:750}.ams-section-heading>span{font-size:11px;color:#675172}
.ams-dashboard-filters{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin-bottom:12px;padding:14px;background:#fff;border:1px solid #cbbfd2;border-radius:10px}.ams-dashboard-filters label{display:grid;gap:5px;font-size:11px;font-weight:650;color:#493354;flex:0 1 145px}.ams-dashboard-filters .ams-filter-search{flex:1 1 180px}.ams-dashboard-filters input,.ams-dashboard-filters select{padding:9px 10px;border:1px solid #b49dc1;border-radius:7px;font:inherit;font-size:12px;width:100%;height:38px;color:#25172f;background:#fff;min-width:0}.ams-dashboard-filters .btn{height:38px}
.ams-live-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:11px}.ams-live-toolbar p{margin:0;font-size:11px;line-height:1.55;color:#61456d}.ams-live-toolbar>div{display:flex;align-items:center;gap:10px}.ams-refresh-switch{display:flex;align-items:center;gap:6px;font-size:11px;color:#4b3359;cursor:pointer}.ams-refresh-switch input{accent-color:#571463}.ams-refresh-message{font-size:12px;color:#765016;min-height:0}.ams-refresh-message:not(:empty){background:#fff6e2;border:1px solid #dfcd9e;border-radius:7px;margin-bottom:10px;padding:9px 12px}
.ams-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;margin-bottom:11px}.ams-metric{border:1px solid #cbbfd2;background:#fff;border-radius:10px;padding:16px 17px;min-width:0;box-shadow:none}.ams-metric>span{display:block;font-size:10px;letter-spacing:.025em;color:#55345f;font-weight:750;text-transform:uppercase}.ams-metric>strong{display:block;font-size:29px;line-height:1.2;margin:6px 0;font-weight:760;font-variant-numeric:tabular-nums;color:#30143d}.ams-metric>small{display:block;font-size:10px;color:#665171;line-height:1.5}.ams-metric--present{border-top:3px solid #228761}.ams-metric--present>strong{color:#146940}.ams-metric--absent{border-top:3px solid #c95c6c}.ams-metric--half_day{border-top:3px solid #c89535}.ams-metric--leave{border-top:3px solid #9360b4}.ams-metric--not_marked{border-top:3px solid #9b92a5}.ams-metric--employees{border-top:3px solid #571463}
.ams-attendance-strip{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;padding:11px 14px;border:1px solid #d4c6de;border-radius:9px;background:#f9f5fc;font-size:11px;color:#5d4669;margin-bottom:17px}.ams-attendance-strip>span{display:flex;align-items:center;gap:6px}.ams-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex:0 0 7px}.ams-dot-purple{background:#8c519b}.ams-dot-amber{background:#c89535}.ams-dot-red{background:#cb6776}.ams-dot-gray{background:#9b92a5}
.ams-roster-card{overflow:hidden}.ams-updated{font-size:10px;color:#665271;white-space:nowrap}.hrms-ams .ams-roster{min-width:1040px}.hrms-ams .ams-roster td{padding:14px 12px;vertical-align:top}.ams-roster td:first-child{min-width:176px}.ams-time{font-variant-numeric:tabular-nums;white-space:nowrap}.ams-presence{display:inline-flex;align-items:center;border-radius:18px;padding:5px 9px;font-size:11px;font-weight:750;line-height:1.3;white-space:nowrap;border:1px solid transparent}.ams-presence--present{color:#10653f;background:#e3f4eb;border-color:#b7ddc7}.ams-presence--half_day{color:#845b04;background:#fff2d7;border-color:#ebd194}.ams-presence--leave{color:#6b3282;background:#f2e6fa;border-color:#dbc2e7}.ams-presence--absent{color:#9e3242;background:#fff0f2;border-color:#eabfca}.ams-presence--not_marked,.ams-presence--off{color:#64576e;background:#f0edf3;border-color:#dbd1e2}.ams-presence--review{color:#9c4a08;background:#fff0df;border-color:#e9c499}.ams-late{display:inline-flex;font-size:11px;color:#895600;background:#fff1d7;border-radius:6px;padding:4px 7px;white-space:nowrap}.ams-final{font-size:11px;font-weight:700;color:#6b5677}.ams-final--unrecorded{color:#91611a}.ams-final--recorded,.ams-final--locked{color:#236c4c}.ams-final--leave{color:#743887}.ams-roster-note{max-width:270px;line-height:1.45}.ams-board-note{border-top:1px solid #d6c9dd;background:#fcf9fd;padding:12px 16px;color:#665170;font-size:11px;line-height:1.65}
.ams-quick-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;margin-bottom:20px}.ams-quick-link{display:block;padding:15px;border:1px solid #cbbfd2;border-radius:9px;background:#fff}.ams-quick-link:hover{border-color:#9963ae;background:#fcf8fd}.ams-quick-link strong{display:block;font-size:12px;color:#3c2048}.ams-quick-link span{display:block;font-size:11px;color:#63506f;margin-top:6px;line-height:1.5}.ams-reminders{margin-bottom:18px}.ams-reminder-list{padding:10px 18px;display:flex;flex-wrap:wrap;gap:18px}.ams-reminder-list>a{display:grid;gap:5px;color:#571463;padding:6px 0;font-size:12px}.ams-reminder-list span{font-size:11px;color:#665170}.ams-bottom-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}.ams-operations{padding:17px 19px;display:grid;gap:15px}.ams-operations>div{display:grid;gap:4px;font-size:12px}.ams-operations span{color:#665170;font-size:11px}.ams-operations a{color:#571463;font-weight:650;font-size:12px}.ams-no-access{padding:22px;color:#665170}
.hrms-ams .payroll-pulse{background:#4b1857}.hrms-ams .payroll-pulse p{color:#f0e4f5}.hrms-ams .payroll-pulse h3{color:#fff}
.hrms-ams-auth .auth-page{background:#ece7f0}.hrms-ams-auth .auth-visual{background:#4b1857}.hrms-ams-auth .auth-panel{background:#fff}.hrms-ams-auth .auth-message h1{font-weight:750;letter-spacing:-.03em}.hrms-ams-auth .auth-brand span,.hrms-ams-auth .auth-message p{color:#efddf4}.hrms-ams-auth .auth-wordmark-wrap{background:#fff;padding:7px;border-radius:6px}.hrms-ams-auth .login-card h2{color:#351741}.hrms-ams-auth .stack-form label{font-size:13px;color:#493354}.hrms-ams-auth .stack-form input{font-size:14px;border-color:#b8a4c5;padding:11px}.hrms-ams-auth .login-card p,.hrms-ams-auth .login-help{color:#665170}
.hrms-ams.sidebar-collapsed .ams-sidebar{transform:translateX(-100%)}.hrms-ams.sidebar-collapsed .main-panel{margin-left:0}.ams-mobile-backdrop{display:none}
@media(min-width:1600px){.hrms-ams .content{padding:27px 32px 46px}.hrms-ams .ams-roster td{padding:16px 14px}.hrms-ams .ams-roster{font-size:13px}.hrms-ams .ams-roster th{font-size:13px}}
@media(max-width:1200px){.ams-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ams-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hrms-ams .page-header h1{font-size:22px}}
@media(max-width:840px){.hrms-ams .sidebar.ams-sidebar{transform:translateX(-100%);width:264px;transition:transform .18s}.hrms-ams.sidebar-mobile-open .sidebar.ams-sidebar{transform:translateX(0)}.hrms-ams .main-panel{margin-left:0}.hrms-ams .topbar.ams-topbar{padding:0 14px;height:64px}.hrms-ams .content{padding:20px 15px 36px}.hrms-ams .ams-mobile-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:#27142b77;z-index:45;border:0;border-radius:0;width:100%;height:100%;padding:0}.hrms-ams.sidebar-mobile-open{overflow:hidden}.ams-bottom-grid{grid-template-columns:1fr}.ams-welcome{padding:20px}.ams-welcome h2{font-size:22px}.ams-dashboard-filters label{flex:1 1 140px}.ams-welcome-tag{display:none}}
@media(max-width:600px){.ams-workspace-date{display:none}.ams-section-heading{align-items:flex-start;flex-direction:column;gap:3px}.ams-welcome h2{font-size:20px}.ams-welcome p{font-size:11px}.ams-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ams-metric{padding:13px}.ams-metric>strong{font-size:27px}.ams-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ams-quick-link{padding:13px}.ams-attendance-strip{gap:8px 15px}.hrms-ams .page-header{gap:12px}.hrms-ams .page-header p{display:block}.hrms-ams .page-action-slot{justify-content:flex-start}.ams-live-toolbar{gap:10px}.ams-dashboard-filters label{flex:1 1 calc(50% - 10px)}.ams-dashboard-filters .ams-filter-search{flex-basis:100%}.hrms-ams .ams-roster{min-width:0}.ams-roster thead{display:none}.hrms-ams .ams-roster tbody{display:block;padding:0 12px}.hrms-ams .ams-roster tr{display:grid;grid-template-columns:1fr 1fr;padding:13px 0;border-bottom:1px solid #d8cfdf;gap:10px}.hrms-ams .ams-roster td{display:block;border:0;padding:0;min-width:0}.ams-roster td:before{content:attr(data-label);display:block;font-size:9px;color:#715580;font-weight:650;margin-bottom:5px;text-transform:uppercase;letter-spacing:.035em}.ams-roster td:first-child{grid-column:1/-1;min-width:0}.ams-roster td:first-child:before{display:none}.ams-roster td[data-label="Presence"],.ams-roster td[data-label="Final attendance"]{grid-column:1/-1}.hrms-ams .ams-roster .empty{grid-column:1/-1}.ams-roster-note{max-width:none}.ams-updated{font-size:10px}.ams-board-note{font-size:10px}.hrms-ams .card-header{padding:15px}.hrms-ams .ams-roster td .person-cell strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.hrms-ams *{transition:none!important;scroll-behavior:auto!important}}
@media print{.hrms-ams .ams-sidebar,.hrms-ams .ams-topbar,.hrms-ams .ams-dashboard-filters,.hrms-ams .ams-live-toolbar,.hrms-ams .ams-quick-grid,.hrms-ams .page-action-slot{display:none!important}.hrms-ams .main-panel{margin:0!important}.hrms-ams .content{max-width:none;padding:0}.hrms-ams{background:#fff}.hrms-ams .ams-roster{min-width:0}.hrms-ams .ams-roster-scroll{overflow:visible}.hrms-ams th{color:#000!important;background:#eee!important}.hrms-ams .ams-roster td{font-size:10px}.hrms-ams .ams-metric-grid{grid-template-columns:repeat(6,1fr)}}
