:root{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:#183337;background:#f4f7f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{height:88px;padding:0 6%;display:flex;align-items:center;gap:24px;border-bottom:1px solid #dce5e1;background:#fff}.brand{text-decoration:none;background:#167266;color:#fff;width:35px;height:35px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:22px;position:relative}.brand span{position:absolute;left:49px;color:#183337;font-size:17px;letter-spacing:2px}.header-label{margin-left:151px;border-left:1px solid #dce5e1;padding-left:24px;font-size:13px;color:#607775}#account{margin-left:auto;font-size:14px}button,.button{font:inherit;font-weight:600;font-size:14px;border:0;border-radius:9px;padding:13px 21px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:32px;text-decoration:none;transition:background .15s}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:#147466;color:white}.primary:hover:not(:disabled){background:#0b5d51}.secondary{background:#e7eeeb;color:#254e47}.danger{background:#fff0ed;color:#ac3c2c;border:1px solid #f1c9c1}.quiet{background:transparent;color:#55716a;padding:10px 12px}main{max-width:1280px;margin:auto;padding:64px 40px 100px;min-height:calc(100vh - 158px)}h1{font-size:34px;font-weight:650;letter-spacing:-1px;line-height:1.3;margin:12px 0}h2{font-size:18px;margin:0;font-weight:600}.eyebrow{color:#167266;font-size:11px;font-weight:700;letter-spacing:2px}.muted,small{color:#6b7e7a;font-size:13px;line-height:1.8}.intro{font-size:16px;color:#647873;line-height:1.9;margin:26px 0 30px}.login{padding:50px 8%;max-width:840px}.login h1{font-size:52px;margin-top:24px}.login .button{padding:17px 25px;min-width:260px}.flow-preview{margin-top:50px;display:flex;align-items:center;gap:25px;color:#78918a}.flow-preview span{border:1px solid #d5e1db;background:#edf2ef;padding:16px 38px;border-radius:10px}.flow-preview b{font-size:26px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.badge{display:inline-flex;padding:8px 14px;border:1px solid #d6e1db;border-radius:30px;background:#e7ece8;color:#576e65;font-size:13px}.badge.on{background:#def4e9;color:#137446;border-color:#bee6ce}.dashboard{display:grid;grid-template-columns:1.65fr 1fr;gap:24px}.card{background:#fff;border:1px solid #dce5e0;border-radius:16px;padding:26px}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.zone-fields{display:flex;align-items:center;gap:20px}.zone-fields label{flex:1;min-width:0;font-size:13px;font-weight:600}.zone-fields small{font-weight:400;display:block;margin-top:10px}input{width:100%;font:inherit;font-weight:500;font-size:20px;letter-spacing:.4px;background:#fafcfb;border:1px solid #cbd9d2;border-radius:9px;padding:14px 13px;color:#153d33;margin-top:12px}input:focus{outline:2px solid #b6dfce;outline-offset:2px}input:disabled{background:#f1f4f1;color:#73817c}.direction{font-size:25px;color:#668b7d}.form-footer{display:flex;align-items:center;justify-content:space-between;margin-top:24px;gap:12px}.controls #controlHint{font-size:14px;line-height:1.8;min-height:44px}.controls button{margin:4px 8px 12px 0}.fine{font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:24px}.metrics span{font-size:13px;color:#5c756b}.metrics strong{display:block;font-size:37px;font-weight:550;margin:17px 0}.metrics .date{font-size:19px;min-height:46px;display:flex;align-items:center}.metrics small{font-size:12px}#notice{padding:14px 18px;border-radius:9px;background:#e0f0e7;color:#205c41;margin-bottom:20px}#notice.error{background:#fff0ed;color:#a53727}.error-text{font-size:13px;color:#aa422d}.muted.warning{color:#a53727}footer{padding:24px 6%;border-top:1px solid #dce5e1;display:flex;justify-content:space-between;color:#85958e;font-size:11px;letter-spacing:1px}[hidden]{display:none!important}@media(max-width:900px){.dashboard{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.header-label{display:none}}@media(max-width:560px){header{padding:0 24px;height:76px}.brand span{font-size:13px}.login{padding:30px 0}.login h1{font-size:39px}main{padding:34px 20px 60px}.page-heading{align-items:flex-start}h1{font-size:25px}.zone-fields{flex-direction:column;align-items:stretch;gap:8px}.direction{text-align:center;transform:rotate(90deg)}.metrics{gap:12px}.card{padding:20px}.form-footer{align-items:flex-start;flex-direction:column}.flow-preview{gap:12px}.flow-preview span{padding:15px 26px}#nickname{display:none}footer{padding:20px;gap:20px;line-height:1.8}}
select{width:100%;padding:12px;border:1px solid #cbd9d2;border-radius:8px;background:#fafcfb;color:#183337;font:inherit;margin-top:10px}.task-toolbar{margin-bottom:24px}.task-toolbar label{font-weight:600}#adminArea{margin-top:48px}#adminArea .card{margin-bottom:20px}.admin-grid{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:18px;align-items:end;margin-top:20px}.admin-grid input,#userForm input{font-size:15px}.checks{display:flex;gap:24px;margin:24px 0}.checks input{width:auto;margin:0 8px 0 0}.grants{display:grid;grid-template-columns:1fr 1fr;gap:18px}.user-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;border-bottom:1px solid #e3eae6}.user-row span{overflow-wrap:anywhere}#taskName{font-size:17px;margin-bottom:20px}#usersPanel .card-head{margin-bottom:12px}@media(max-width:700px){.admin-grid,.grants{grid-template-columns:1fr}.checks{flex-direction:column}}
:root{--directory-accent:#147466}
body.directory-open{overflow:hidden}
.directory-overlay{position:fixed;inset:0;z-index:1000;background:rgba(18,39,37,.42);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:28px}
.directory-dialog{width:min(920px,100%);height:min(720px,90vh);background:#fff;border:1px solid #e2ebe6;border-radius:24px;box-shadow:0 24px 90px #10292238;display:flex;flex-direction:column;overflow:hidden}
.directory-heading{padding:26px 28px 20px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #e7ede9;gap:16px}
.directory-heading h2{font-size:23px;margin:7px 0}.directory-heading p{margin:0;color:#7a8b84;font-size:13px}.directory-heading .quiet{font-size:20px;padding:4px 10px}
.directory-layout{display:grid;grid-template-columns:290px minmax(0,1fr);flex:1;min-height:0}
.directory-sidebar{background:#f7f9f8;border-right:1px solid #e7ede9;overflow:auto;padding:14px 12px}
#directoryTreeToggle{width:100%;justify-content:space-between;color:#7e8d85;font-size:12px;padding:8px 12px;margin-bottom:12px}
#directoryTree ul{list-style:none;margin:0;padding:0}#directoryTree ul ul{margin-left:17px;padding-left:9px;border-left:1px solid #dbe5df}
.directory-tree-row{display:flex;align-items:center;border-radius:9px;margin:3px 0;min-height:39px}.directory-tree-row.selected{background:#e1efe9;color:#126e5f}
.directory-tree-row button{background:transparent;gap:0;color:inherit;border-radius:7px}
.directory-tree-toggle{padding:10px 5px;width:25px;flex-shrink:0;font-size:14px}.directory-tree-toggle:disabled{opacity:.15}
.directory-tree-label{padding:10px 7px;justify-content:flex-start;text-align:left;font-size:13px;line-height:1.5;flex:1;min-width:0;overflow-wrap:anywhere}
.directory-tree-label:before{content:'';width:14px;height:11px;border:1.5px solid #8da79c;border-radius:3px;flex-shrink:0;margin-right:9px;box-shadow:0 -3px 0 -1px #c0d2c9}
.directory-tree-row:hover{background:#edf2ef}.directory-tree-row.selected:hover{background:#d8ebe2}
.directory-people{padding:20px 26px;min-width:0;overflow:auto}.directory-breadcrumb{font-size:12px;color:#72877c;line-height:1.8;margin-bottom:18px;overflow-wrap:anywhere}
.directory-search-label{font-size:12px;color:#6b8074}#userForm #directorySearch{font-size:14px;margin-top:8px;padding:12px 15px;background:#f7f9f8;border-color:#e0e8e2;border-radius:11px}
#directoryHint{font-size:12px;margin:14px 0 8px}.directory-member-list{display:flex;flex-direction:column;gap:6px}
.directory-person{background:#fff;border:1px solid transparent;padding:12px;width:100%;text-align:left;justify-content:flex-start;gap:13px;border-radius:12px;font-weight:400}
.directory-person:hover{background:#f3f7f4}.directory-person.selected{background:#eef8f2;border-color:#a5cdbc}
.directory-avatar{width:42px;height:42px;background:#e4eee8;color:#397b60;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;flex-shrink:0}
.directory-person:nth-child(3n+2) .directory-avatar{background:#e8edf8;color:#5d76a0}.directory-person:nth-child(3n) .directory-avatar{background:#f4ecdf;color:#9a7a45}
.directory-person-info{flex:1;min-width:0}.directory-person-info strong{display:block;font-size:14px;font-weight:600}.directory-person-info small{display:block;font-size:11px;overflow-wrap:anywhere;margin-top:2px;color:#92a196}
.directory-check{width:19px;height:19px;border-radius:50%;border:1px solid #d4dfd7;flex-shrink:0;font-size:12px;display:flex;align-items:center;justify-content:center}.selected .directory-check{background:#147466;color:#fff;border-color:#147466}
.directory-empty{text-align:center;color:#8a9d92;font-size:14px;padding:48px 10px;line-height:2.2}.directory-empty small{font-size:12px;color:#9bab9f}
.directory-bottom{border-top:1px solid #e7ede9;display:flex;align-items:center;justify-content:space-between;padding:20px 28px;gap:18px;background:#fff}.directory-bottom>div:first-child{min-width:0}.directory-bottom small{font-size:11px;color:#8b9a90}
.directory-pending{font-size:13px;color:#39745b;line-height:1.6;margin-top:5px;overflow-wrap:anywhere}.directory-actions{display:flex;gap:8px;flex-shrink:0}.directory-actions button{font-size:13px;padding:12px 19px}
#selectedEmployee:not(:empty){padding:15px 18px;background:#eef6f1;border:1px solid #d8e9de;border-radius:12px;color:#277257;font-size:14px;line-height:1.7}
.directory-dialog button:focus-visible{outline:2px solid #62a38b;outline-offset:2px}
@media(max-width:600px){.directory-overlay{padding:12px}.directory-dialog{height:94vh;height:94dvh;border-radius:18px}.directory-heading{padding:20px}.directory-heading h2{font-size:20px}.directory-heading p{font-size:12px}.directory-layout{display:flex;flex-direction:column}.directory-sidebar{flex-shrink:0;max-height:32%;border-right:0;border-bottom:1px solid #e7ede9;padding:8px 12px}#directoryTreeToggle{margin:0;padding:8px}.directory-people{padding:16px;flex:1;min-height:0}.directory-breadcrumb{margin-bottom:12px}.directory-bottom{padding:14px 16px;align-items:stretch;flex-direction:column;gap:12px}.directory-pending{max-height:45px;overflow:auto}.directory-actions{justify-content:flex-end}.directory-actions .primary{flex:1}.directory-empty{padding:18px 0}}
