.pp-portal{--pp-magenta:#b81773;--pp-ink:#25202d;--pp-muted:#695e6c;--pp-border:#eadde5;--pp-pale:#fff4f9;margin:0;background:linear-gradient(125deg,#fff8fc,#f9f7fa 60%);color:var(--pp-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;min-height:100vh;display:flex;flex-direction:column}
.pp-portal *{box-sizing:border-box}
.pp-portal a{color:var(--pp-magenta);text-underline-offset:3px}
.pp-portal .pp-btn{color:#fff}
.pp-portal .pp-quiet{color:var(--pp-magenta)}
.pp-portal-header{min-height:96px;background:#fff;border-bottom:1px solid var(--pp-border);padding:20px max(24px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px}
.pp-portal-brand{color:var(--pp-ink)!important;font-size:27px;font-weight:850;font-style:italic;letter-spacing:-1.2px;text-decoration:none;line-height:1.15;white-space:nowrap}
.pp-portal-brand em{color:var(--pp-magenta)}
.pp-portal-brand small{display:block;font-style:normal;font-size:8px;letter-spacing:1.25px;text-transform:uppercase;color:var(--pp-muted);margin-top:8px;font-weight:650}
.pp-portal-account{display:flex;align-items:center;gap:18px;font-size:14px}
.pp-portal-account form{margin:0}
.pp-portal-account .pp-btn{min-height:42px;padding:10px 15px;font-size:13px}
.pp-portal main{width:100%;flex:1;min-width:0}
.pp-portal .pp-admin{width:calc(100% - 48px);max-width:1160px;margin:48px auto 64px}
.pp-portal .pp-admin h1{font-size:clamp(29px,4vw,43px);letter-spacing:-1.35px}
.pp-portal .pp-admin-head{align-items:flex-start;margin-bottom:32px}
.pp-portal .pp-admin-head p{margin:8px 0 0}
.pp-portal .pp-admin-head .pp-kicker{margin:0 0 12px}
.pp-portal .pp-admin-head>a{flex-shrink:0}
.pp-portal .pp-tabs{border:0;background:#fff;padding:7px;border-radius:14px;box-shadow:0 2px 10px #3f183805;margin-bottom:28px;gap:4px}
.pp-portal .pp-tabs a{flex:1;text-align:center;white-space:nowrap;padding:13px 12px}
.pp-portal .pp-card{box-shadow:0 8px 30px #43233204;border-radius:20px;padding:28px}
.pp-portal .pp-card h2{font-size:22px}
.pp-portal .pp-card-head h2{font-size:27px;margin:0}
.pp-portal .pp-card-head .pp-kicker{color:var(--pp-muted)}
.pp-portal .pp-toolbar{justify-content:space-between}
.pp-portal .pp-metrics{margin:24px 0;gap:15px}
.pp-portal .pp-metrics>div{padding:18px 22px;font-size:14px}
.pp-portal .pp-metrics strong{font-size:34px;letter-spacing:-1px;color:var(--pp-magenta)}
.pp-portal .pp-date-picker select{min-width:260px}
.pp-portal .pp-card summary{font-size:15px;min-height:40px;display:list-item;padding:5px 0}
.pp-portal .pp-participant{padding:19px 0}
.pp-portal .pp-participant strong{font-size:17px}
.pp-portal .pp-participant span{font-size:14px;overflow-wrap:anywhere}
.pp-portal .pp-card>form:last-child{margin-bottom:0}
.pp-portal .pp-login{max-width:510px;width:calc(100% - 40px);margin:62px auto 72px;padding:36px 40px;background:#fff;border:1px solid var(--pp-border);border-radius:25px;box-shadow:0 15px 55px #76315c0a;text-align:center}
.pp-portal .pp-login h1{font-size:36px;margin-bottom:14px}
.pp-portal .pp-lock{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:var(--pp-pale);color:var(--pp-magenta);font-size:29px;margin:0 auto 22px}
.pp-portal .pp-login-intro{color:var(--pp-muted);margin:0 0 30px;font-size:15px}
.pp-portal .pp-login-form{text-align:left}
.pp-portal .pp-field{font-size:14px}
.pp-portal .pp-field input,.pp-portal .pp-field select{min-height:50px}
.pp-portal .pp-password{position:relative;display:block}
.pp-portal .pp-password input{padding-right:83px}
.pp-portal .pp-password button{position:absolute;right:5px;top:5px;height:40px;border:0;background:#fff;padding:0 10px;border-radius:8px;color:var(--pp-magenta);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.pp-portal .pp-submit{margin:14px 0 8px;min-height:52px;font-size:16px}
.pp-portal .pp-login-help{font-size:12px;margin:20px 0 0;color:var(--pp-muted)}
.pp-portal-error{max-width:760px;width:calc(100% - 40px);margin:25px auto}
.pp-portal-footer{padding:24px max(24px,calc((100vw - 1160px)/2));display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--pp-border);color:var(--pp-muted);font-size:12px;background:#fff}
.pp-portal :focus-visible{outline:3px solid #6652aa;outline-offset:3px}
.pp-skip{position:absolute;left:20px;top:-70px;background:#fff;padding:14px;z-index:10;border:2px solid var(--pp-magenta);border-radius:8px}
.pp-skip:focus{top:12px}
@media(max-width:800px){.pp-portal .pp-admin-head{display:block}.pp-portal .pp-admin-head>a{margin-top:20px}.pp-portal .pp-tabs a{flex:1 0 28%}.pp-portal .pp-weekly-row{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-portal .pp-weekly-row>.pp-check{grid-column:1/-1}}
@media(max-width:600px){.pp-portal-header{padding:17px 20px;min-height:84px;gap:14px}.pp-portal-brand{font-size:23px}.pp-portal-brand small{font-size:6px;letter-spacing:.7px}.pp-portal-account{font-size:12px;gap:8px}.pp-portal-account>span{display:none}.pp-portal-account .pp-btn{padding:9px 10px;font-size:12px}.pp-portal .pp-admin{width:calc(100% - 32px);margin:30px auto 44px}.pp-portal .pp-tabs{padding:5px}.pp-portal .pp-tabs a{font-size:12px;padding:11px 7px}.pp-portal .pp-card{padding:21px 17px;border-radius:17px}.pp-portal .pp-card-head h2{font-size:24px}.pp-portal .pp-metrics{gap:7px}.pp-portal .pp-metrics>div{padding:14px 8px;font-size:11px}.pp-portal .pp-metrics strong{font-size:29px}.pp-portal .pp-login{width:calc(100% - 32px);padding:30px 23px;margin:34px auto 48px}.pp-portal .pp-login h1{font-size:32px}.pp-portal .pp-login-intro br{display:none}.pp-portal .pp-date-picker select{min-width:0}.pp-portal-footer{padding:20px 18px;font-size:11px}.pp-portal .pp-participant{display:block}.pp-portal .pp-participant details{max-width:none;margin-top:12px}.pp-portal .pp-fields{grid-template-columns:1fr}}

.pp-portal .pp-tabs a{flex:1 0 28%}
@media(max-width:600px){.pp-portal .pp-tabs a{flex:1 0 28%}}
