.yhr-portal-shell{max-width:1080px;margin:3rem auto;padding:2rem;color:#172033;background:#fff;border-radius:18px;box-shadow:0 18px 50px rgba(22,34,55,.12)}.yhr-portal-shell__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.yhr-portal-shell__eyebrow{margin:0;color:#526b9a;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:700}.yhr-portal-shell h1{margin:.25rem 0 1.5rem}.yhr-portal-shell button{border:0;border-radius:999px;padding:.7rem 1.1rem;background:#3157d5;color:#fff;font-weight:700;cursor:pointer}.yhr-portal-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1rem 0 2rem}.yhr-portal-metrics article{padding:1.2rem;border:1px solid #e1e7f2;border-radius:14px;background:#f8faff}.yhr-portal-metrics strong{display:block;font-size:2rem}.yhr-portal-metrics span{color:#526070}.yhr-portal-panel{border:1px solid #e1e7f2;border-radius:14px;padding:1.2rem}.yhr-portal-panel ul{list-style:none;padding:0;margin:0}.yhr-portal-panel li{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid #edf0f6}.yhr-portal-panel li:last-child{border-bottom:0}@media(max-width:640px){.yhr-portal-shell{margin:1rem;padding:1rem}.yhr-portal-metrics{grid-template-columns:1fr}.yhr-portal-shell__header{flex-direction:column}.yhr-portal-panel li{flex-direction:column;gap:.25rem}}
.yhr-portal-nav{display:flex;gap:1rem;flex-wrap:wrap;margin:.25rem 0 2rem}.yhr-portal-nav a{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-width:9rem;padding:.8rem 1.1rem;border-radius:12px;background:#f0f4ff;color:#24458f;text-decoration:none;font-weight:700;box-shadow:0 5px 14px rgba(36,69,143,.08);transition:transform .2s,box-shadow .2s,background .2s}.yhr-portal-nav a:hover,.yhr-portal-nav a:focus{background:#3157d5;color:#fff;transform:translateY(-2px);box-shadow:0 8px 18px rgba(49,87,213,.2)}.yhr-portal-nav a:first-letter{font-size:1.2em}@media(max-width:640px){.yhr-portal-nav{gap:.65rem}.yhr-portal-nav a{flex:1;min-width:8rem}}
.yhr-portal-nav a:first-child::before{content:"\2302";font-size:1.15rem}.yhr-portal-nav a:nth-child(2)::before{content:"\2637";font-size:1.15rem}
body:has(.yhr-portal-login) .entry-title,body:has(.yhr-portal-login) .page-title,body:has(.yhr-portal-login) .wp-block-post-title,body:has(.yhr-portal-shell) .entry-title,body:has(.yhr-portal-shell) .page-title,body:has(.yhr-portal-shell) .wp-block-post-title{display:none!important}.yhr-portal-login{max-width:560px;margin:0 auto;padding:2rem 0}.yhr-portal-login h1{display:none}.yhr-portal-login .yhr-portal-shell__eyebrow{margin-bottom:1rem}.yhr-portal-login form{display:grid;gap:1rem}.yhr-portal-login label{display:grid;gap:.4rem;font-weight:700}.yhr-portal-login input{width:100%;box-sizing:border-box;border:1px solid #d9e0ed;border-radius:10px;padding:.85rem 1rem;background:#fff}.yhr-portal-login button{width:max-content;min-width:9rem}
.yhr-portal-shell__header{align-items:center;margin-bottom:.5rem}.yhr-portal-shell__header form{margin:0}.yhr-portal-shell__header button{padding:.55rem .9rem;font-size:.9rem}.yhr-portal-metrics{gap:.75rem;margin:1rem 0 1.25rem}.yhr-portal-metrics article{padding:1rem}.yhr-portal-metrics strong{font-size:1.7rem}.yhr-portal-panel{padding:1rem}@media(max-width:640px){.yhr-portal-shell__header{flex-direction:row;align-items:center}.yhr-portal-shell__header .yhr-portal-shell__eyebrow{margin:0}.yhr-portal-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.yhr-portal-metrics article{min-height:86px}.yhr-portal-metrics strong{font-size:1.5rem}}@media(max-width:420px){.yhr-portal-metrics{grid-template-columns:1fr}}
.yhr-portal-filters{padding:.35rem;background:#f7f9fe;border:1px solid #e5eaf5;border-radius:14px}.yhr-portal-filters a{font-size:.9rem;background:transparent}.yhr-portal-panel li{align-items:center;border:1px solid #e4e9f3;border-radius:12px;margin:.6rem 0;padding:1rem 1.1rem;background:#fff;transition:box-shadow .2s,transform .2s}.yhr-portal-panel li:hover{box-shadow:0 8px 20px rgba(36,69,143,.1);transform:translateY(-1px)}.yhr-portal-panel li strong{color:#183b82;letter-spacing:.03em}.yhr-portal-panel li span:last-child{color:#59677b;font-size:.92rem;text-align:right}.yhr-portal-panel li span:last-child::first-line{color:#1f2d45}@media(max-width:640px){.yhr-portal-panel li{align-items:flex-start;gap:.35rem}.yhr-portal-panel li span:last-child{text-align:left}}
.yhr-portal-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0 0}.yhr-portal-detail div{padding:.9rem 1rem;border-radius:10px;background:#f7f9fe;border:1px solid #e4e9f3}.yhr-portal-detail dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#65738a}.yhr-portal-detail dd{margin:.3rem 0 0;font-weight:700;color:#1e3153}@media(max-width:520px){.yhr-portal-detail{grid-template-columns:1fr}}
.yhr-portal-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.25rem}.yhr-portal-actions form{display:flex;gap:.5rem;align-items:flex-start}.yhr-portal-actions textarea{min-width:220px;min-height:54px;border:1px solid #d9e0ed;border-radius:8px;padding:.6rem}.yhr-portal-actions button{border:0;border-radius:9px;padding:.65rem 1rem;background:#3157d5;color:#fff;font-weight:700;cursor:pointer}.yhr-portal-actions button.is-secondary{background:#eef2fb;color:#24458f}.yhr-portal-action-message{padding:.75rem 1rem;border-radius:10px;background:#eef7ef;color:#246335;font-weight:600}
.yhr-portal-dialog .swal2-html-container{margin:0;text-align:left}.yhr-portal-dialog .yhr-portal-panel{border:0;padding:0;box-shadow:none}.yhr-portal-dialog-loading{padding:1rem;color:#5e6d84}
 .yhr-portal-actions{display:grid;grid-template-columns:auto minmax(220px,1fr);gap:1rem;align-items:start}.yhr-portal-actions__buttons{display:flex;gap:.5rem;flex-wrap:wrap}.yhr-portal-actions__buttons form{display:block}.yhr-portal-actions__reason label{display:grid;gap:.35rem;font-weight:700;color:#42516a}.yhr-portal-actions__reason textarea{width:100%;min-height:82px;box-sizing:border-box;border:1px solid #d9e0ed;border-radius:9px;padding:.65rem;resize:vertical}@media(max-width:560px){.yhr-portal-actions{grid-template-columns:1fr}.yhr-portal-actions__buttons{width:100%}.yhr-portal-actions__buttons button{flex:1}}
.yhr-portal-action-message--error{background:#fff0f0;color:#9a2d35}.yhr-portal-detail dd{overflow-wrap:anywhere}
.yhr-portal-panel li:has(a[href*="yhr_portal_reservation="]){cursor:pointer}.yhr-portal-panel li:has(a[href*="yhr_portal_reservation="]):focus-within{outline:3px solid rgba(49,87,213,.25);outline-offset:2px}
.yhr-portal-panel li:has(a[href*="yhr_portal_reservation="]){cursor:pointer}.yhr-portal-panel li:has(a[href*="yhr_portal_reservation="]):focus-within{outline:3px solid rgba(49,87,213,.25);outline-offset:2px}
.yhr-portal-panel li:has(a[href*="yhr_portal_reservation="]){cursor:pointer}.yhr-portal-panel li:has(a[href*="yhr_portal_reservation="]):focus-within{outline:3px solid rgba(49,87,213,.25);outline-offset:2px}
.yhr-portal-panel li>span:first-child{display:grid;gap:.25rem}.yhr-portal-status{width:max-content;padding:.18rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700;background:#eef2fb;color:#4f607a}.yhr-portal-status--pending{background:#fff4d6;color:#8a5b00}.yhr-portal-status--approved{background:#e5f6e9;color:#23733b}.yhr-portal-status--declined,.yhr-portal-status--cancelled{background:#fde8e8;color:#9a2d35}
.yhr-portal-panel li>a+small.yhr-portal-status{display:block;margin-top:.25rem;width:max-content}
.yhr-portal-policy-override{margin-top:1rem;padding:1rem;border:1px solid #f3c9c9;border-radius:12px;background:#fff6f6}.yhr-portal-policy-override>p{margin:0 0 .75rem;color:#9a2d35;font-weight:700}.yhr-portal-policy-override__item{margin-bottom:.75rem}.yhr-portal-policy-override__item label{display:grid;gap:.35rem;font-weight:700;color:#42516a}.yhr-portal-policy-override__item textarea{width:100%;min-height:70px;box-sizing:border-box;border:1px solid #d9e0ed;border-radius:9px;padding:.65rem;resize:vertical}.yhr-portal-policy-override button{border:0;border-radius:9px;padding:.65rem 1rem;background:#3157d5;color:#fff;font-weight:700;cursor:pointer}

.yhr-portal-nav{display:flex;gap:.75rem;flex-wrap:wrap;margin:.5rem 0 1rem}.yhr-portal-nav a[aria-current=page]{font-weight:700;text-decoration:underline}
.yhr-portal-week{margin-top:1rem}.yhr-portal-week__nav{display:flex;gap:.9rem;flex-wrap:wrap;align-items:center;margin:.25rem 0 .75rem}.yhr-portal-week__nav a{padding:.35rem .8rem;border:1px solid #c9d3ea;border-radius:999px;text-decoration:none}
.yhr-portal-week__scroll{overflow-x:auto}.yhr-portal-week__grid{border-collapse:collapse;width:100%;min-width:520px}.yhr-portal-week__grid th,.yhr-portal-week__grid td{border:1px solid #e1e7f2;padding:.4rem .5rem;text-align:center;font-size:.85rem}.yhr-portal-week__grid tbody th{text-align:left;white-space:nowrap}
.yhr-portal-week__cell--approved{background:#d6f0dc;font-weight:700}.yhr-portal-week__cell--pending{background:#fff0c7;font-weight:700}.yhr-portal-week__cell--blocked{background:#e4e7ee;font-weight:700}.yhr-portal-week__legend span{display:inline-block;min-width:1.5rem;text-align:center;padding:0 .3rem;border-radius:4px}
.yhr-portal-status--approved{color:#1a7a3a}.yhr-portal-status--declined{color:#b3261e}

.yhr-portal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0}.yhr-portal-card{border:1px solid #e1e7f2;border-radius:14px;padding:1.2rem;background:#fff}.yhr-portal-card h2{margin:0 0 .75rem;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:#526070}.yhr-portal-card__count{font-size:1.5rem;font-weight:700;line-height:1.3;margin:.25rem 0 1rem;color:#1f4d36}.yhr-portal-card__list{list-style:none;margin:0 0 .75rem;padding:0}.yhr-portal-card__list li{display:flex;flex-direction:column;padding:.5rem 0;border-bottom:1px solid #edf0f6}.yhr-portal-card__list small{color:#66728a}
@media(max-width:820px){.yhr-portal-cards{grid-template-columns:1fr}}

.yhr-portal-filterform{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;align-items:end;margin:0 0 1rem;padding:1rem;border:1px solid #e1e7f2;border-radius:14px;background:#f8faff}.yhr-portal-filterform label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:#526070}.yhr-portal-filterform input,.yhr-portal-filterform select{padding:.5rem;border:1px solid #c9d3ea;border-radius:8px;font-size:.95rem;background:#fff;max-width:100%}.yhr-portal-filterform__actions{display:flex;gap:.75rem;align-items:center}
