/* Independent company application shell. */
.org-note{white-space:normal;min-width:150px;max-width:360px;overflow-wrap:anywhere}
.avatar-control{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px;padding:16px 0;border-top:1px solid var(--line)}
.avatar-preview{width:88px;height:88px;border-radius:6px;object-fit:cover;background:#edf1ee;flex-shrink:0}
.avatar-control label{flex:1;min-width:150px;margin-top:0}.avatar-control input{max-width:100%}.avatar-control .field-note{width:100%;margin:0}
.avatar-control>span{font-size:12px;color:var(--muted)}
.rule-members{min-width:210px;max-width:330px;white-space:normal}.rule-person{display:flex;align-items:center;gap:8px;margin:8px 0}.rule-person .avatar{flex-shrink:0;margin:0}.rule-person small{display:block;font-size:11px;font-weight:400;white-space:normal}.rule-duty{white-space:normal;min-width:170px;max-width:260px}
:root{--ink:#202a32;--muted:#727c86;--line:#e4e8ec;--green:#176b55;--pale:#edf6f1;--blue:#28658f;background:#f5f6f8}
body{min-width:320px;background:#f5f6f8}
header{height:76px;padding:0 30px;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}
.brand img{width:40px;height:40px}.brand{font-size:17px;color:#202a32}.brand small{margin-top:3px;color:#737d85}
.account{gap:14px}.account button{padding:8px 10px;font-size:12px}.account span{max-width:none}
button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-color:#dce2e6;min-height:38px;transition:background .15s,color .15s}
button svg{width:16px;height:16px;flex-shrink:0;stroke-width:1.8}.icon-button{width:38px;height:38px;padding:0;flex-shrink:0}.icon-button svg{width:18px;height:18px}
button:hover{background:#f1f5f3}.primary:hover{background:#125541}.primary{background:#176b55;border-color:#176b55}
main#app-view{display:grid;grid-template-columns:208px minmax(0,1fr);max-width:none;padding:0;margin:0;min-height:calc(100vh - 76px)}
.sidebar{background:#fff;border-right:1px solid var(--line);padding:30px 14px 20px;display:flex;flex-direction:column;position:sticky;top:76px;height:calc(100vh - 76px)}
.nav-label{margin:0 14px 16px;font-size:11px;color:#879199}
.tabs{display:flex;flex-direction:column;border:0;gap:6px;margin:0;overflow:visible}.tabs button{display:flex;justify-content:flex-start;border:0;border-radius:5px;gap:12px;padding:12px 15px;min-height:46px;font-size:13px;color:#64717c;background:transparent}.tabs button svg{width:18px;height:18px}.tabs button.active{color:#176b55;background:#eaf3ee;border:0;font-weight:600}.tabs button:hover{background:#f2f5f4}
.sidebar-footer{margin-top:auto;padding:30px 12px 0;display:flex;align-items:center;gap:7px;font-size:11px;color:#88928b;white-space:nowrap}.status-dot{width:6px;height:6px;display:inline-block;background:#358466;border-radius:50%}
.workspace{padding:30px 32px 20px;min-width:0;width:100%;max-width:1740px;margin:0 auto}
.eyebrow{font-size:11px;color:#8a939b;margin:0 0 10px!important}.page-heading{border-bottom:1px solid var(--line);padding-bottom:24px;margin:0 0 28px}.page-heading h1{font-size:24px;font-weight:600;margin:0 0 10px}.toolbar{align-items:end;flex-shrink:0}.toolbar button{height:40px}.month-label{font-size:11px}.month-label input{min-height:40px;height:40px;margin-top:7px;background:white;width:155px;font-size:13px}
.stats{gap:0;border-bottom:1px solid var(--line);padding:8px 0 26px;margin-bottom:18px;background:transparent}.stat{border:0!important;padding:0 22px;border-right:1px solid var(--line)!important}.stat:first-child{padding-left:0}.stat:last-child{border-right:0!important}.stat b{font-size:27px;font-weight:600;font-variant-numeric:tabular-nums;margin-top:12px}.stat:first-child b{color:#176b55}.stat:nth-child(2) b{color:#28658f}.stat:nth-child(3) b{color:#946a1b}.stat small{font-size:11px;line-height:1.7;margin-top:10px}.overview-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px}
.section-heading{margin:26px 0 16px;min-width:0}.section-heading:first-child{margin-top:0}.section-heading h2{font-size:16px;font-weight:600}.section-heading p{max-width:800px}.table-wrap{border:1px solid var(--line);border-radius:5px}.table-wrap table{font-size:13px}th{background:#f1f4f5;color:#69757e;font-size:12px;font-weight:500;padding:13px 16px}td{padding:15px 16px;border-color:#edf0f2;font-size:12px;line-height:1.65}tbody tr:hover{background:#fafcfb}td button{min-height:30px;padding:4px 9px;font-size:11px}.actions{gap:6px}td:first-child{font-weight:500}.split-detail{min-width:240px;max-width:320px;font-size:11px}.split-detail small{font-size:11px}.avatar{width:30px;height:30px;display:inline-block}
.filters{background:#eef1f3;padding:14px 16px;border-radius:5px;gap:12px;align-items:end}.filters label{font-size:11px}.filters input,.filters select{min-height:38px;padding:8px 10px;width:180px;font-size:12px}.filters label:last-child{flex:1;min-width:150px}.filters label:last-child input{width:100%}.filters>button{min-height:38px;background:#fff}
.notice{background:#fff8e9}.empty{border:1px solid var(--line);border-radius:5px;background:#fff;padding:48px 20px}.rule-text{max-width:none}.rule-text h3{margin-top:28px;color:#303c44}.rule-text h3:first-child{margin-top:0}.rule-text .table-wrap{margin-top:14px}.rule-text p{font-size:12px;max-width:1000px}.payroll-total{border:0;padding:4px 0 22px}.payroll-total b{font-size:23px}.sync{margin:24px 0 0;font-size:11px}.error:empty{display:none}
main#login-view{min-height:calc(100vh - 76px);padding:36px 20px;background:#f5f6f8}.login{background:#fff;border:1px solid var(--line);border-radius:8px;padding:32px 36px;max-width:410px;margin:28px auto}.login-mark img{width:52px;height:52px;border-radius:6px;object-fit:cover}.login-company{font-size:12px;color:#6b7780;margin:18px 0 7px}.login h1{font-size:24px;font-weight:600}.login-subtitle{font-size:12px;color:#859087;margin:10px 0 26px}.login input{margin-top:8px}.login label{margin-top:20px}.login button[type=submit]{height:44px;margin-top:26px}.login .error{margin-bottom:0}
dialog{padding:24px;border-color:#dce3e7;box-shadow:0 18px 70px #172b282b}.dialog-heading{padding-bottom:16px}.dialog-heading h2{font-size:17px}.dialog-actions{border-top:1px solid var(--line);padding-top:18px}.fields{column-gap:20px}input:focus,select:focus,textarea:focus{outline-color:#78a894}button:focus-visible,a:focus-visible{outline-color:#78a894}
@media(min-width:1700px){.workspace{padding:38px 44px}.sidebar{width:220px}main#app-view{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:1100px){.workspace{padding:26px 22px}.stat{padding:0 14px}.stat b{font-size:23px}main#app-view{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding-left:10px;padding-right:10px}.tabs button{padding-left:12px}.toolbar{gap:7px}}
@media(max-width:850px){header{position:relative;padding:14px 16px;height:auto;min-height:72px;flex-wrap:wrap;gap:12px}.brand{font-size:15px}.brand small{font-size:11px}.brand img{width:36px;height:36px}.account{gap:7px;justify-content:flex-end}.account button{font-size:11px;min-height:32px;padding:5px 7px}.account span#identity{font-size:11px;max-width:190px}main#app-view{display:block;min-height:calc(100vh - 72px)}.sidebar{position:sticky;top:0;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:0 12px;z-index:15}.nav-label,.sidebar-footer{display:none}.tabs{display:flex;flex-direction:row;gap:18px;overflow-x:auto;padding:0;scrollbar-width:thin}.tabs button{flex-shrink:0;padding:13px 1px;gap:6px;border-radius:0;min-height:48px;font-size:12px;border-bottom:2px solid transparent}.tabs button svg{width:15px;height:15px}.tabs button.active{background:none;border-bottom:2px solid var(--green)}.workspace{padding:24px 16px 20px}.page-heading{gap:16px;margin-bottom:24px;padding-bottom:20px}.page-heading h1{font-size:23px}.toolbar{flex-wrap:nowrap;gap:8px;width:100%;align-items:end}.month-label{flex:1}.month-label input{width:100%;max-width:none}.toolbar #export{font-size:12px;padding:8px 11px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0;padding-bottom:24px}.stat{padding:0 12px!important}.stat:nth-child(odd){padding-left:0!important}.stat:nth-child(2){border-right:0!important}.stat b{font-size:23px;margin-top:8px}.stat small{font-size:10px}.overview-actions{margin-bottom:24px}.section-heading{margin-top:24px}.section-heading h2{font-size:15px}.filters{padding:12px;gap:10px}.filters label{min-width:115px;flex:1}.filters input,.filters select{width:100%}.filters>button{align-self:end}.filters label:last-child{min-width:100%}th,td{padding:12px}.rule-text h3{margin-top:24px}.payroll-total b{font-size:21px}.login{padding:28px 24px;margin:12px auto}main#login-view{padding:26px 18px}.fields{grid-template-columns:1fr}.fields .full{grid-column:auto}dialog{padding:20px 18px}.dialog-heading h2{font-size:16px}.account button span{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
