:root{font-family:system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#fafafa;background:#101114;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.hero{padding:clamp(25px,5vw,80px);display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;background:radial-gradient(circle at 100% 95%,#40151b 0,#40151b 17%,transparent 17.1%),#101114}.hero header{display:flex;align-items:center;gap:15px}.hero header h1{font-size:19px;margin:0}.hero small{color:#d7d7df}.mark{display:grid;place-items:center;background:#fff;color:#d92c37;border-radius:12px;font-weight:900;width:74px;height:74px;font-size:30px}.statement{max-width:490px}.statement strong{color:#fa4c58;letter-spacing:2px;font-size:12px}.statement h2{font-size:clamp(38px,5vw,70px);line-height:1.04;margin:16px 0}.statement p{line-height:1.6}.hero footer{font-size:13px;font-weight:700;letter-spacing:3px;color:#fff}.panel{background:#1a1c20;align-self:center;justify-self:center;padding:clamp(24px,4vw,48px);border-radius:20px;width:min(90%,460px);display:flex;flex-direction:column;gap:12px}.panel h2{margin-top:0}.panel label{font-size:13px;color:#eee}.panel input{background:#101114;border:1px solid #565963;border-radius:9px;padding:14px;color:#fff;font-size:16px;min-width:0}.panel input:focus-visible,.panel button:focus-visible{outline:3px solid #ff727b;outline-offset:3px}.panel button{padding:14px;background:#df3945;color:#fff;border:none;border-radius:10px;font-weight:700;cursor:pointer}.panel button:disabled{opacity:.6}.note,.status{font-size:13px;color:#c6cad0;line-height:1.5}.loading{padding:40px}@media(max-width:850px){.shell{grid-template-columns:1fr}.hero{min-height:60vh;padding:32px 24px}.statement{padding:80px 0}.panel{margin:36px 0 55px;width:min(92%,550px)}}.office{display:grid;grid-template-columns:250px 1fr;min-height:100vh;background:#f6f7fb;color:#17202c}.sidebar{background:#16181e;color:#fff;display:flex;flex-direction:column;padding:20px 15px;gap:22px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:13px}.brandmark{background:#fff;color:#df3343;padding:14px;border-radius:12px;font-size:25px}.brand small{display:block;color:#aaa;font-size:10px;letter-spacing:2px;margin-top:5px}.sidebar nav{display:grid;gap:5px}.sidebar button{background:transparent;border:0;color:#fafafa;text-align:left;font-size:15px;padding:12px;border-radius:9px;cursor:pointer}.sidebar button.current{background:#dc3544}.sidebar .small{font-size:12px;color:#abb2c0;line-height:1.6;margin-top:auto}.sidebar .logout{border:1px solid #999}.workspace{padding:30px clamp(18px,4vw,60px)}.officebar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:26px}.officebar h1{margin:0;font-size:28px}.officebar p{color:#667085;margin:7px 0}.pill{background:#ffe3e7;color:#a51e31;font-size:11px;font-weight:800;padding:10px;border-radius:18px}.box{background:#fff;border:1px solid #e7e9f0;border-radius:14px;padding:25px;margin-bottom:20px}.box h2{margin:0 0 18px;font-size:19px}.muted{color:#637083;line-height:1.6}.entryform{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:15px}.entryform label{display:grid;gap:8px;font-size:13px;font-weight:600}.entryform input,.entryform select{font-size:15px;border:1px solid #b6bbc4;border-radius:9px;padding:12px;background:#fff;color:#111}.entryform button{align-self:end;border:0;padding:13px;background:#df3545;color:#fff;font-weight:700;border-radius:9px;cursor:pointer}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left}th,td{padding:12px;border-bottom:1px solid #e4e7ef;font-size:14px}th{background:#fafafa}.flash:not(:empty){padding:13px;border-radius:9px;margin-bottom:18px;background:#e6f0ff}.flash.error{background:#ffe7e7;color:#ab1929}.flash.ok{background:#e2f7e8}.office button:focus-visible,.office input:focus-visible,.office select:focus-visible{outline:3px solid #ef6474;outline-offset:2px}@media(max-width:800px){.office{display:block}.sidebar{gap:10px;padding:14px}.sidebar nav{display:flex;overflow-x:auto}.sidebar .small{display:none}.workspace{padding:18px}.officebar h1{font-size:22px}.pill{font-size:9px}}[hidden]{display:none!important}.entryform button:disabled,.office button:disabled{cursor:not-allowed;opacity:.6}.role-tree{border-left:3px solid #dc3544;padding:10px 18px;background:#fafbfe;border-radius:8px;line-height:1.8}.role-tree details{padding:5px 0}.role-tree summary{cursor:pointer;font-weight:700;list-style:revert}.role-tree .tree-child{border-left:2px solid #d9dfe8;margin:10px 0 8px 14px;padding-left:20px}.role-tree p{margin:5px 0;font-size:13px;overflow-wrap:anywhere}.office-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.office-actions button,.role-tree button{background:#eef1f5;color:#1a2433;border:1px solid #bdc5d1;padding:9px 12px;border-radius:9px;cursor:pointer}.office #attendanceClass,.office #attendanceDate{width:min(100%,320px);padding:10px;border:1px solid #bdc5d1;border-radius:9px;background:#fff;color:#111}.office button[data-attend]{background:#f2f4f8;color:#14223c;border:1px solid #cdd3df;border-radius:8px;padding:8px;margin:2px;cursor:pointer}.primary-staff-action{background:#df3545;color:#fff;border:0;border-radius:10px;padding:13px 20px;font-weight:700;cursor:pointer;font-size:15px}#staffEditor{margin-top:20px;border-top:1px solid #e4e7ef;padding-top:20px}#staffEditor[hidden]{display:none!important}#staffEditor .entryform{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.office [data-copy-uid],.office [data-edit-staff]{background:#f2f4f8;border:1px solid #cbd2dc;border-radius:7px;padding:7px 10px;color:#1a2433;cursor:pointer;font-size:12px}.office td code{font-size:12px;white-space:nowrap}.office td button{margin:2px}.office td strong{font-weight:650}
