:root{font-family:Inter,system-ui,sans-serif;color:#18324a;background:#f4f7f9}
*{box-sizing:border-box}body{margin:0}.hidden{display:none!important}
.center-card{width:min(430px,92vw);margin:8vh auto;background:white;padding:28px;border-radius:18px;box-shadow:0 18px 55px #18324a22}
.brand{font-weight:800;color:#0f766e;margin-bottom:12px}.brand.small{color:white;padding:18px}
h1{margin:0 0 20px}label{display:block;margin:12px 0;font-weight:650}
input,select,textarea{width:100%;padding:12px;border:1px solid #cbd5df;border-radius:10px;margin-top:6px}
button{border:0;border-radius:10px;padding:11px 15px;background:#0f766e;color:white;cursor:pointer}
button:hover{filter:brightness(.96)}.msg{min-height:22px;color:#b42318}.company-list{display:grid;gap:10px}
#shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}aside{background:#14324a;padding:12px}
aside button{display:block;width:100%;margin:6px 0;text-align:left;background:transparent}
aside button:hover{background:#ffffff16}.disabled{opacity:.45;cursor:not-allowed}.content{min-width:0}
header{height:64px;background:white;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid #e3e9ee}
#sessionState{margin-left:12px;color:#0f766e;font-size:.9rem}#logoutBtn{margin-left:12px;background:#e9eef2;color:#18324a}
#mainView{padding:22px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.card{background:white;padding:18px;border-radius:15px;box-shadow:0 7px 25px #18324a12}
.big{font-size:2rem;font-weight:800}.table-wrap{overflow:auto;background:white;border-radius:14px}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px;border-bottom:1px solid #e9eef2;text-align:left}
.actions button{padding:7px;margin:2px;font-size:.82rem}.danger{background:#b42318}.secondary{background:#476579}
dialog{border:0;border-radius:16px;padding:24px;box-shadow:0 20px 70px #0004}
@media(max-width:760px){#shell{grid-template-columns:1fr}aside{display:flex;overflow:auto}aside .brand{display:none}aside button{min-width:max-content}header{height:auto;padding:12px;gap:12px;align-items:flex-start}}
