:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#182b3b;background:#f3f6f8;font-size:16px}*{box-sizing:border-box}body{margin:0}header{padding:24px 5%;background:#fff;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dce4e9}.brand{font-weight:850;font-size:24px;text-decoration:none}.brand span{font-weight:400;margin-left:8px}nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap;padding:15px 5%;background:white}nav form{margin-left:auto}a{color:#155c79}main{max-width:1180px;margin:48px auto;padding:0 24px;min-height:65vh}h1{font-size:clamp(28px,4vw,44px);letter-spacing:-1.3px;margin:12px 0 24px}h2{margin-top:36px;font-size:22px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:#38728b}.muted,small,footer{color:#607484}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}.cards article,.panel,.table{background:#fff;border:1px solid #dce4e9;border-radius:12px;padding:24px}.cards strong{font-size:36px}.cards small{font-size:14px;font-weight:400}.actions{display:flex;flex-wrap:wrap;gap:10px}button,.button{font:inherit;background:#12617a;color:#fff;border:0;padding:12px 18px;border-radius:7px;cursor:pointer;display:inline-block;text-decoration:none}.secondary,.quiet{background:#e6eef2;color:#174c62}.quiet{padding:7px 12px}form.panel{max-width:640px}input,select,textarea{display:block;padding:11px;border:1px solid #aebfc9;border-radius:6px;font:inherit;max-width:100%;width:100%;margin-top:8px}input[type=checkbox]{width:auto;display:inline}input[type=month]{display:inline;width:auto;margin-right:10px}label{font-weight:600}form p{margin-bottom:22px}.table{padding:0;overflow-x:auto;margin-top:22px}table{border-collapse:collapse;width:100%;text-align:left}th,td{padding:16px;border-bottom:1px solid #e5ebef}th{font-size:12px;color:#56707e;text-transform:uppercase;letter-spacing:.6px}.badge{padding:5px 9px;border-radius:5px;font-size:13px;white-space:nowrap;background:#edf0f3}.pending{background:#fff0c3;color:#755300}.approved,.paid{background:#daf1e5;color:#176545}.rejected,.cancelled{background:#f6e3e3;color:#943e3e}.message{padding:16px;background:#e1edf5;border-left:4px solid #256586}.errorlist{color:#a32424}.login{max-width:650px;margin:70px auto}.login h1{font-size:52px}.panel form{margin:18px 0}footer{padding:30px 5%;font-size:13px}@media(max-width:720px){.cards{grid-template-columns:1fr}nav{gap:13px}nav form{margin-left:0}main{margin-top:28px}.cards strong{font-size:30px}th,td{padding:12px}.login h1{font-size:36px}}
/* EM Agenturer: primary #3399cc, charcoal #434244, square controls. */
:root{font-family:Roboto,Arial,sans-serif;color:#434244;background:#f5f5f5;--em-blue:#3399cc;--em-dark:#434244}header{border-top:5px solid var(--em-blue);padding:18px 5%}.brand{display:flex;gap:22px;align-items:center;color:var(--em-dark)}.brand img{width:230px;height:auto;max-width:48vw}.brand span{border-left:1px solid #ddd;padding-left:22px;font-size:23px}nav{background:var(--em-dark);gap:22px}nav a{color:white;text-decoration:none;font-size:14px}nav a:hover{text-decoration:underline}a{color:#176488}main{max-width:1440px}button,.button{background:var(--em-blue);color:#102a3a;border-radius:2px;font-weight:600}.secondary,.quiet{background:#e8edf0;color:#434244}.cards article,.panel,.table{border-radius:3px}.cards article{border-top:3px solid var(--em-blue)}input,select,textarea{border-radius:2px}.eyebrow{color:#176488}.calendar-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.calendar-filters{display:flex;flex-wrap:wrap;align-items:end;gap:16px;padding:20px;background:white;border:1px solid #ddd}.calendar-filters label{font-size:13px;min-width:160px}.calendar-filters input[type=month]{display:block;width:100%;margin-right:0}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:28px 0 16px}.calendar-toolbar h2{margin:0;text-transform:capitalize}.calendar-toolbar>span{font-size:13px;color:#666}.calendar-legend{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:13px;margin-bottom:16px}.legend-item{padding:6px 10px;border:1px solid #bbc4cb;border-left-width:4px}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #d5dce1;border-left:1px solid #d5dce1;background:white}.weekday{padding:13px 8px;background:var(--em-dark);color:white;font-weight:600;font-size:13px;text-align:center}.calendar-day{min-height:150px;padding:8px;border-right:1px solid #d5dce1;border-bottom:1px solid #d5dce1;min-width:0}.calendar-day.weekend{background:#f3f4f5}.calendar-day.outside{background:#ebedef;color:#787b7d}.day-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px}.day-heading time{font-weight:700;padding:4px 7px}.today .day-heading time{background:#042981;color:white;border-radius:50%}.today .day-heading>span{color:#042981;font-size:11px;font-weight:bold}.calendar-event{font-size:12px;margin-bottom:7px;border:1px solid;border-left-width:4px;padding:8px;overflow-wrap:anywhere}.calendar-event summary{cursor:pointer;list-style:none}.calendar-event summary::-webkit-details-marker{display:none}.calendar-event summary strong,.calendar-event summary span{display:block;margin-bottom:3px}.calendar-event summary strong{font-size:13px}.calendar-event summary:focus-visible{outline:2px solid #042981;outline-offset:3px}.event-holiday{background:#e4f1fb;color:#164b70;border-color:#3399cc}.event-leave{background:#eee7f7;color:#563773;border-color:#9163b4}.event-private{background:#fff0d8;color:#754c0c;border-color:#cd942f}.event-work{background:#dff1e8;color:#255841;border-color:#3e9170}.event-pending{border-style:dashed;background-image:repeating-linear-gradient(135deg,transparent,transparent 6px,#ffffff66 6px,#ffffff66 10px)}.calendar-status{font-size:10px;font-weight:700;letter-spacing:.15px;margin-top:7px}.event-details{border-top:1px solid currentColor;margin-top:7px;padding-top:6px}.event-details p{margin:3px 0 8px}.event-details a{color:inherit;font-weight:bold}.empty-day{display:none;color:#92989c;font-size:12px}.mobile-day{display:none}@media(max-width:900px){.calendar-day{padding:5px}.calendar-event{padding:5px}.weekday{font-size:11px}}@media(max-width:640px){.calendar-toolbar{flex-wrap:wrap}.calendar-toolbar h2{order:-1;width:100%}.calendar-filters{padding:15px;gap:12px}.calendar-filters label{flex:1;min-width:135px}.month-grid{grid-template-columns:1fr}.weekday,.calendar-day.outside{display:none}.calendar-day{min-height:70px;padding:12px}.mobile-day{display:inline;text-transform:capitalize}.calendar-event{padding:10px;font-size:13px}.calendar-status{font-size:12px}.empty-day{display:block}.brand{gap:10px}.brand span{padding-left:10px;font-size:18px}header>.muted{display:none}.calendar-toolbar>span{display:none}}
