
/* /hr_simple/static/src/css/portal_controls.css */
 .hrp-page{--hrp-control-height:44px; --hrp-control-radius:8px; --hrp-control-border:#cbd3de; --hrp-control-focus:rgba(49,95,159,.16); --hrp-control-disabled:#f1f3f6;}.hrp-field{margin-bottom:12px;}.hrp-label{display:block; margin-bottom:5px; color:#525a6a; font-size:.78rem; font-weight:800; letter-spacing:0;}.hrp-field:focus-within .hrp-label{color:var(--hrp-blue-ink);}.hrp-input{width:100%; min-height:var(--hrp-control-height); padding:9px 11px; border:1px solid var(--hrp-control-border); border-radius:var(--hrp-control-radius); outline:0; background:#fff; color:var(--hrp-ink); box-sizing:border-box; transition:border-color .12s ease, box-shadow .12s ease, background-color .12s ease;}textarea.hrp-input{min-height:96px; resize:vertical;}.hrp-input:focus{border-color:var(--hrp-blue); background:#fbfdff; box-shadow:0 0 0 3px var(--hrp-control-focus);}.hrp-input:disabled, .hrp-input[readonly]{border-color:#dde2e8; background:var(--hrp-control-disabled); color:#7c8491; cursor:not-allowed;}.hrp-input[aria-invalid="true"]{border-color:var(--hrp-red); background:#fffafb; box-shadow:0 0 0 3px rgba(173,79,93,.11);}.hrp-field-error, .hrp-field-help, .hrp-credential-status{margin:6px 0 0; color:var(--hrp-muted); font-size:.76rem; line-height:1.4;}.hrp-field-error, .hrp-credential-status.is-error{color:var(--hrp-red-ink);}.hrp-credential-status.is-ok{color:var(--hrp-green-ink);}.hrp-button{min-height:var(--hrp-control-height); padding:9px 14px; border:1px solid transparent; border-radius:var(--hrp-control-radius); box-sizing:border-box; background:#fff; color:var(--hrp-blue-ink); font:inherit; font-weight:800; line-height:1.2; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; gap:7px; cursor:pointer; position:relative; touch-action:manipulation; -webkit-tap-highlight-color:transparent; transition:transform .08s ease, box-shadow .08s ease, background-color .12s ease, border-color .12s ease;}.hrp-button-primary{border-color:var(--hrp-blue); background:var(--hrp-blue); color:#fff; box-shadow:0 4px 12px rgba(49,95,159,.20);}.hrp-button-primary:hover{border-color:#284f86; background:#284f86; color:#fff;}.hrp-button-secondary{border-color:var(--hrp-blue-line); background:#fff; color:var(--hrp-blue-ink);}.hrp-button-secondary:hover{border-color:var(--hrp-blue); background:var(--hrp-blue-soft); color:var(--hrp-blue-ink);}.hrp-button-light{border-color:#d5dce6; background:#fff; color:#454d5c;}.hrp-button-light:hover{border-color:#aeb8c6; background:#f7f8fa; color:#303642;}.hrp-button-danger{border-color:var(--hrp-red); background:var(--hrp-red); color:#fff;}.hrp-button:focus-visible, .hrp-refresh-button:focus-visible{outline:3px solid var(--hrp-control-focus); outline-offset:2px;}.hrp-button:disabled, .hrp-button[aria-disabled="true"], .hrp-refresh-button:disabled{border-color:#dde2e8; background:var(--hrp-control-disabled); color:#9aa1ad; box-shadow:none; cursor:not-allowed; opacity:1;}.hrp-button:not(:disabled):active, .hrp-refresh-button:not(:disabled):active{transform:translateY(1px) scale(.99); box-shadow:none;}.hrp-refresh-button{width:var(--hrp-control-height); height:var(--hrp-control-height); min-width:var(--hrp-control-height); flex:0 0 var(--hrp-control-height); display:inline-flex; align-items:center; justify-content:center; border:1px solid #d5dce6; border-radius:var(--hrp-control-radius); background:#fff; color:var(--hrp-blue-ink); cursor:pointer; position:relative; touch-action:manipulation;}.hrp-refresh-button:hover{border-color:var(--hrp-blue-line); background:var(--hrp-blue-soft);}.hrp-language-form{display:flex; align-items:center; gap:6px; min-width:0;}.hrp-logout-form{display:flex; margin:0;}.hrp-logout-button{color:#6d4d42;}.hrp-logout-button:hover{border-color:#d5b8ae; background:#fff5f1; color:#8b4936;}.hrp-language-control{position:relative; width:164px; min-width:0; height:var(--hrp-control-height); border:1px solid var(--hrp-control-border); border-radius:var(--hrp-control-radius); background:#fff; color:var(--hrp-blue);}.hrp-language-control::after{content:'\25BE'; position:absolute; top:50%; right:10px; transform:translateY(-52%); color:#687184; font-size:.68rem; pointer-events:none;}.hrp-language-icon{position:absolute; z-index:1; top:50%; left:10px; transform:translateY(-50%); color:var(--hrp-blue); pointer-events:none;}.hrp-language-select{appearance:none; -webkit-appearance:none; width:100%; height:100%; padding:0 27px 0 31px; border:0; border-radius:calc(var(--hrp-control-radius) - 1px); outline:0; background:transparent; color:#404858; font-size:.78rem; font-weight:750; cursor:pointer;}.hrp-language-select:focus-visible{box-shadow:inset 0 0 0 2px var(--hrp-blue);}.hrp-language-select::-ms-expand{display:none;}.hrp-alert-ok, .hrp-alert-error{padding:11px 13px; margin:0 0 14px; border:1px solid; border-radius:var(--hrp-control-radius); font-size:.86rem; line-height:1.45;}.hrp-alert-ok{border-color:var(--hrp-green-line); background:var(--hrp-green-soft); color:var(--hrp-green-ink);}.hrp-alert-error{border-color:var(--hrp-red-line); background:var(--hrp-red-soft); color:var(--hrp-red-ink);}.hrp-page input[type="checkbox"]{width:20px; height:20px; flex:0 0 20px; accent-color:var(--hrp-blue);}.hrp-form-submitting button[type="submit"], .hrp-form-submitting input[type="submit"]{cursor:wait;}.hrp-button.is-loading, .hrp-refresh-button.is-loading{color:transparent !important; cursor:wait;}.hrp-button.is-loading::before, .hrp-refresh-button.is-loading::before{content:''; position:absolute; top:50%; left:50%; width:16px; height:16px; margin:-8px 0 0 -8px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; color:var(--hrp-blue); animation:hrp-submit-spin .65s linear infinite;}.hrp-button-primary.is-loading::before{color:#fff;}@keyframes hrp-submit-spin{to{transform:rotate(360deg);}}@media (max-width:760px){.hrp-page{--hrp-control-height:48px;}.hrp-input{padding:10px 12px; font-size:16px;}}@media (prefers-reduced-motion:reduce){.hrp-button, .hrp-refresh-button, .hrp-input{transition:none;}.hrp-button.is-loading::before, .hrp-refresh-button.is-loading::before{animation-duration:1.4s;}}

/* /hr_simple/static/src/css/portal_staff.css */
#wrapwrap footer, footer#bottom, .o_footer, .o_footer_copyright{display:none !important;}.hrp-page{--hrp-ink:#292e38; --hrp-muted:#707785; --hrp-blue:#2f64b3; --hrp-blue-soft:#eaf2ff; --hrp-blue-line:#b9d2f5; --hrp-blue-ink:#214f93; --hrp-green:#347451; --hrp-green-soft:#e8f5ec; --hrp-green-line:#bbddc5; --hrp-green-ink:#2f6844; --hrp-yellow:#b48519; --hrp-yellow-soft:#fff5cf; --hrp-yellow-line:#e6d48a; --hrp-yellow-ink:#6c5618; --hrp-red:#bd5664; --hrp-red-soft:#fcebed; --hrp-red-line:#e8bcc2; --hrp-red-ink:#843b47; --hrp-accent:var(--hrp-blue); --hrp-powder:var(--hrp-blue-soft); --hrp-lavender:var(--hrp-green-soft); --hrp-blush:var(--hrp-red-soft); --hrp-butter:var(--hrp-yellow-soft); --hrp-canvas:#f7f8fa; --hrp-line:#dfe3ea; background:var(--hrp-canvas); min-height:100vh; padding:18px 16px 112px; color:var(--hrp-ink); overflow-x:clip; font-family:"Lato",sans-serif;}#wrapwrap .hrp-page a, #wrapwrap .hrp-page a:link, #wrapwrap .hrp-page a:visited, #wrapwrap .hrp-page a:hover, #wrapwrap .hrp-page a:focus, #wrapwrap .hrp-page a:active, #wrapwrap .hrp-page a *, #wrapwrap .hrp-page button, #wrapwrap .hrp-page button:hover, #wrapwrap .hrp-page button:focus, #wrapwrap .hrp-page button:active, #wrapwrap .hrp-page button *{text-decoration:none !important; text-decoration-line:none !important; -webkit-text-decoration-line:none !important;}.hrp-shell{max-width:860px; min-width:0; margin:0 auto;}.hrp-header{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:6px 2px 18px; margin-bottom:18px;}.hrp-header::before{display:none;}.hrp-brand-lockup{display:flex; align-items:center; gap:10px; min-width:0;}.hrp-brand-mark{width:42px; height:42px; flex:0 0 42px; object-fit:contain;}.hrp-brand-title{margin:0; color:var(--hrp-ink); font-size:1.18rem; font-weight:850; line-height:1.15;}.hrp-brand-subtitle{margin:2px 0 0; color:#7a8190; font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:0;}.hrp-header-actions{display:flex; align-items:center; justify-content:flex-end; gap:10px; min-width:0;}.hrp-user{display:flex; align-items:center; gap:9px; min-width:0; text-align:right;}.hrp-user-greeting{display:block; color:#7a8190; font-size:.68rem; line-height:1.15;}.hrp-user-name{display:block; max-width:220px; overflow:hidden; color:var(--hrp-ink); font-size:.86rem; font-weight:800; text-overflow:ellipsis; white-space:nowrap;}.hrp-avatar{width:42px; height:42px; flex:0 0 42px; border-radius:50%; background:var(--hrp-green-soft); color:var(--hrp-green-ink); display:flex; align-items:center; justify-content:center; font-size:1rem; font-weight:850; box-shadow:0 0 0 3px #f0f7f2;}.hrp-sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}.hrp-tabs{position:fixed; z-index:50; left:50%; bottom:0; transform:translateX(-50%); width:min(720px, 100%); display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:0; padding:7px 8px calc(7px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.98); border:1px solid var(--hrp-line); border-bottom:0; border-radius:8px 8px 0 0; box-shadow:0 -8px 30px rgba(48,53,66,.08); box-sizing:border-box;}.hrp-tab{min-width:0; min-height:55px; border:0; border-radius:0; background:transparent; color:#7a8190; font-size:.72rem; font-weight:750; cursor:pointer; touch-action:manipulation; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px;}.hrp-tab:hover{color:var(--hrp-accent);}.hrp-tab.is-active{color:var(--hrp-accent);}.hrp-tab:focus-visible{outline:3px solid rgba(47,100,179,.2); outline-offset:-2px;}.hrp-tab-icon{position:relative; width:30px; height:27px; display:flex; align-items:center; justify-content:center; border-radius:6px;}.hrp-tab.is-active .hrp-tab-icon{background:transparent; color:var(--hrp-accent);}.hrp-tab.is-active .hrp-tab-icon::after{content:''; position:absolute; left:50%; bottom:-1px; width:4px; height:4px; transform:translateX(-50%); border-radius:50%; background:var(--hrp-accent);}.hrp-tab .fa{font-size:1.05rem;}.hrp-tab-badge{position:absolute; top:-5px; right:-7px; min-width:18px; height:18px; padding:0 4px; border:2px solid #fff; border-radius:9px; background:var(--hrp-red-soft); color:var(--hrp-red-ink); font-size:.68rem; line-height:14px; text-align:center; box-sizing:border-box;}.hrp-panel{display:none;}.hrp-panel.is-active{display:block;}#wrapwrap .hrp-page .hrp-panel:focus, #wrapwrap .hrp-page .hrp-panel:focus-visible{outline:0 !important; box-shadow:none !important;}.hrp-card{background:#fff; border:1px solid var(--hrp-line); border-radius:8px; box-shadow:0 5px 18px rgba(48,53,66,.04);}.hrp-card-pad{padding:20px;}.hrp-section-title{display:flex; align-items:center; gap:10px; margin:26px 0 12px; color:var(--hrp-ink); font-size:1.04rem; font-weight:850; letter-spacing:0;}.hrp-section-title::after{content:''; flex:1; height:1px; background:#e1e5ec;}.hrp-actions .hrp-section-title{margin-top:0;}.hrp-subtle{color:#737b8a; font-size:.86rem; line-height:1.5;}.hrp-today{position:relative; overflow:hidden; border:1px solid rgba(48,53,66,.18); border-left:4px solid currentColor; border-radius:8px; padding:22px 24px; box-shadow:0 9px 24px rgba(48,53,66,.09);}.hrp-today-head{display:flex; align-items:center; justify-content:space-between; gap:12px;}.hrp-eyebrow{color:inherit; font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:0;}.hrp-today-status{display:inline-flex; align-items:center; gap:5px; flex:0 0 auto; padding:5px 8px; border:1px solid rgba(48,53,66,.18); border-radius:999px; background:rgba(0,0,0,.1); color:inherit; font-size:.72rem; font-weight:800;}.hrp-today-shift{margin-top:14px; color:inherit; font-size:1.9rem; font-weight:850; line-height:1.12;}.hrp-today-note{margin-top:6px; color:inherit; font-size:.86rem;}.hrp-today-punches{display:flex; flex-wrap:wrap; gap:7px; margin-top:12px;}.hrp-today-punch{min-width:72px; display:flex; flex-direction:column; gap:1px; padding:7px 9px; border:1px solid rgba(48,53,66,.16); border-radius:8px; background:rgba(255,255,255,.58); color:inherit;}.hrp-today-punch small{color:inherit; font-size:.68rem; font-weight:750; opacity:.78;}.hrp-today-punch strong{color:inherit; font-size:.82rem; line-height:1.2;}.hrp-today-attendance-status{min-width:116px;}.hrp-today-attendance-status.is-incomplete{border-color:rgba(132,59,71,.3);}.hrp-today-awaiting-punch{width:max-content; max-width:100%; display:flex; align-items:center; gap:6px; margin-top:11px; padding:6px 9px; border:1px solid rgba(48,53,66,.15); border-radius:8px; background:rgba(255,255,255,.46); color:inherit; font-size:.74rem; font-weight:750; box-sizing:border-box;}.hrp-today-team{margin-top:13px; color:inherit; font-size:.8rem; line-height:1.45;}.hrp-today-link{width:max-content; display:flex; align-items:center; gap:6px; margin-top:16px; color:inherit; font-size:.78rem; font-weight:800; text-decoration:none;}.hrp-today-link:hover{color:inherit; text-decoration:underline;}.hrp-week-strip{display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; width:100%; padding:3px 0 12px; margin-bottom:12px;}.hrp-schedule{display:flex; gap:8px; overflow-x:auto; padding:3px 2px 12px; margin-bottom:12px; scroll-snap-type:x proximity; scrollbar-width:thin;}.hrp-calendar{display:flex; gap:8px; overflow-x:auto; padding:2px 2px 12px; margin-bottom:18px; scroll-snap-type:x proximity; scrollbar-width:thin;}.hrp-week-day{min-width:0; min-height:88px; border:1px solid #d8dde6; border-radius:8px; padding:9px 5px; box-sizing:border-box; background:#fff; box-shadow:0 4px 14px rgba(48,53,66,.04); text-align:center; overflow:hidden;}.hrp-schedule-day{flex:0 0 96px; min-height:98px; scroll-snap-align:start; border:1px solid #d8dde6; border-radius:8px; padding:11px; box-sizing:border-box; background:#fff; box-shadow:0 4px 14px rgba(48,53,66,.04);}.hrp-schedule-day.has-action{min-height:120px;}.hrp-week-day.is-today, .hrp-schedule-day.is-today{border-color:var(--hrp-blue); box-shadow:0 0 0 1px var(--hrp-blue);}.hrp-week-date, .hrp-schedule-date{color:inherit; font-size:.72rem; font-weight:850;}.hrp-week-date{display:flex; flex-direction:column; align-items:center; gap:2px; line-height:1.1;}.hrp-week-weekday{font-size:.7rem; text-transform:uppercase;}.hrp-week-number{font-size:.88rem;}.hrp-week-shift{margin-top:10px; color:inherit; font-size:.76rem; font-weight:850; line-height:1.15; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}.hrp-shift-legend{display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:7px 14px; margin:-3px 0 16px;}.hrp-shift-legend-item{display:inline-flex; align-items:center; gap:6px; color:var(--hrp-muted); font-size:.7rem; font-weight:700;}.hrp-shift-legend-swatch{width:14px; height:10px; flex:0 0 14px; border:1px solid currentColor; border-radius:3px;}.hrp-schedule-shift{margin-top:9px; color:inherit; font-size:.86rem; font-weight:850; line-height:1.2; overflow-wrap:anywhere;}.hrp-schedule-code{margin-top:3px; font-size:.68rem; font-weight:750;}.hrp-schedule-action{display:inline-flex; align-items:center; gap:4px; margin-top:8px; padding-top:6px; border-top:1px solid currentColor; color:inherit; font-size:.68rem; font-weight:850; text-decoration:none;}.hrp-schedule-action:hover{color:inherit; text-decoration:underline;}.hrp-quick-actions{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:4px 0 2px;}.hrp-quick-action{min-width:0; min-height:72px; display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:10px; align-items:center; padding:12px; border:1px solid var(--hrp-line); border-radius:8px; background:#fff; color:var(--hrp-ink); text-decoration:none; box-shadow:0 5px 18px rgba(48,53,66,.04);}.hrp-quick-action:hover{border-color:var(--hrp-blue-line); color:var(--hrp-ink);}.hrp-quick-icon{width:38px; height:38px; display:flex; align-items:center; justify-content:center; border-radius:8px; color:var(--hrp-blue-ink);}.hrp-quick-icon.is-sage{background:var(--hrp-green-soft); color:var(--hrp-green-ink);}.hrp-quick-icon.is-moon{background:var(--hrp-yellow-soft); color:var(--hrp-yellow-ink);}.hrp-quick-action strong, .hrp-quick-action small{display:block; overflow-wrap:anywhere;}.hrp-quick-action strong{font-size:.82rem; line-height:1.25;}.hrp-quick-action small{margin-top:3px; color:#7a8190; font-size:.68rem; line-height:1.25;}.hrp-quick-arrow{color:#9299a6; font-size:.72rem;}.hrp-summary{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; overflow:hidden; border:1px solid var(--hrp-line); border-radius:8px; background:#fff; box-shadow:0 5px 18px rgba(48,53,66,.04);}.hrp-summary-item{min-width:0; min-height:104px; background:#fff; border:0; border-right:1px solid var(--hrp-line); border-radius:0; padding:16px; box-sizing:border-box;}.hrp-summary-item:first-child{background:var(--hrp-green-soft);}.hrp-summary-item:last-child{background:var(--hrp-blue-soft);}.hrp-summary-item:last-child{border-right:0;}.hrp-summary-label{color:#687184; font-size:.7rem; font-weight:850; text-transform:uppercase; letter-spacing:0;}.hrp-summary-value{margin-top:8px; color:var(--hrp-ink); font-size:1.35rem; font-weight:850;}.hrp-summary-meta{margin-top:4px; color:#747c8b; font-size:.78rem;}.hrp-performance{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:16px 0 4px;}.hrp-performance-item{min-width:0; min-height:136px; display:flex; flex-direction:column; justify-content:space-between; padding:14px; border:1px solid transparent; border-radius:8px; box-sizing:border-box;}.hrp-performance-item.is-sick{border-color:var(--hrp-red-line); background:var(--hrp-red-soft);}.hrp-performance-item.is-late{border-color:var(--hrp-yellow-line); background:var(--hrp-yellow-soft);}.hrp-performance-item.is-absent{border-color:var(--hrp-blue-line); background:var(--hrp-blue-soft);}.hrp-performance-top{display:flex; align-items:center; gap:7px; min-width:0;}.hrp-performance-icon{width:26px; height:26px; flex:0 0 26px; display:flex; align-items:center; justify-content:center; border-radius:7px; background:rgba(255,255,255,.72); color:#59647a;}.hrp-performance-label{min-width:0; color:#586174; font-size:.69rem; font-weight:850; text-transform:uppercase; line-height:1.15; overflow-wrap:anywhere;}.hrp-performance-value{color:var(--hrp-ink); font-size:2.35rem; font-weight:850; line-height:1;}.hrp-performance-meta{color:#697283; font-size:.69rem; line-height:1.25; overflow-wrap:anywhere;}.hrp-attendance-history-link{display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; margin-top:8px; padding:0 12px; border:1px solid var(--hrp-blue-line); border-radius:8px; background:#fff; color:var(--hrp-blue-ink); font-size:.78rem; font-weight:800;}.hrp-attendance-heading{display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:16px;}.hrp-attendance-heading .hrp-eyebrow{margin:0 0 4px; color:var(--hrp-blue-ink);}.hrp-attendance-heading h2{margin:0; font-size:1.45rem; line-height:1.2;}.hrp-attendance-heading p:not(.hrp-eyebrow){margin:5px 0 0; color:var(--hrp-muted); font-size:.8rem;}.hrp-attendance-private{display:inline-flex; align-items:center; gap:6px; flex:0 0 auto; padding:6px 8px; border-radius:8px; background:var(--hrp-blue-soft); color:var(--hrp-blue-ink); font-size:.72rem; font-weight:800;}.hrp-attendance-month{display:grid; grid-template-columns:44px minmax(0,1fr) 44px; align-items:center; gap:8px; margin-bottom:12px; padding:8px; border:1px solid var(--hrp-line); border-radius:8px; background:#fff;}.hrp-attendance-month > div{min-width:0; text-align:center;}.hrp-attendance-month small{display:block; color:var(--hrp-muted); font-size:.68rem; font-weight:750; text-transform:uppercase;}.hrp-attendance-month strong{display:block; margin-top:2px; font-size:.94rem;}.hrp-attendance-month-button{width:44px; height:44px; display:grid; place-items:center; border:1px solid var(--hrp-line); border-radius:8px; background:var(--hrp-blue-soft); color:var(--hrp-blue-ink);}.hrp-attendance-month-button.is-disabled{background:#f2f3f5; color:#a3a8b1;}.hrp-attendance-summary{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; margin-bottom:14px; border:1px solid var(--hrp-line); border-radius:8px; background:#fff;}.hrp-attendance-summary > div{min-width:0; padding:12px; border-right:1px solid var(--hrp-line);}.hrp-attendance-summary > div:last-child{border-right:0;}.hrp-attendance-summary span{display:block; color:var(--hrp-muted); font-size:.68rem; font-weight:800; text-transform:uppercase;}.hrp-attendance-summary strong{display:block; margin-top:5px; font-size:1.35rem; line-height:1;}.hrp-attendance-summary .is-green{background:var(--hrp-green-soft);}.hrp-attendance-summary .is-yellow{background:var(--hrp-yellow-soft);}.hrp-attendance-summary .is-red{background:var(--hrp-red-soft);}.hrp-attendance-list{overflow:hidden; border:1px solid var(--hrp-line); border-radius:8px; background:#fff;}.hrp-attendance-row{display:grid; grid-template-columns:84px minmax(0,1fr); min-width:0; border-top:1px solid var(--hrp-line); border-left:4px solid #aeb4be;}.hrp-attendance-row:first-child{border-top:0;}.hrp-attendance-row.is-green{border-left-color:var(--hrp-green);}.hrp-attendance-row.is-yellow{border-left-color:var(--hrp-yellow);}.hrp-attendance-row.is-red{border-left-color:var(--hrp-red);}.hrp-attendance-row.is-blue{border-left-color:var(--hrp-blue);}.hrp-attendance-date{display:flex; flex-direction:column; align-items:center; justify-content:center; padding:12px 8px; border-right:1px solid var(--hrp-line); background:#f7f8fa; text-align:center;}.hrp-attendance-date span{color:var(--hrp-muted); font-size:.7rem; font-weight:800;}.hrp-attendance-date strong{margin:2px 0; font-size:1.45rem; line-height:1;}.hrp-attendance-date small{color:#858c99; font-size:.68rem;}.hrp-attendance-main{min-width:0; padding:12px 13px;}.hrp-attendance-row-head{display:flex; align-items:flex-start; justify-content:space-between; gap:8px;}.hrp-attendance-row-head > strong{min-width:0; font-size:.86rem; overflow-wrap:anywhere;}.hrp-attendance-status{flex:0 0 auto; padding:4px 7px; border-radius:999px; background:#eef0f3; color:#596170; font-size:.68rem; font-weight:850;}.hrp-attendance-status.is-green{background:var(--hrp-green-soft); color:var(--hrp-green-ink);}.hrp-attendance-status.is-yellow{background:var(--hrp-yellow-soft); color:var(--hrp-yellow-ink);}.hrp-attendance-status.is-red{background:var(--hrp-red-soft); color:var(--hrp-red-ink);}.hrp-attendance-status.is-blue{background:var(--hrp-blue-soft); color:var(--hrp-blue-ink);}.hrp-attendance-times{display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:10px;}.hrp-attendance-times span{display:flex; flex-direction:column; min-width:54px;}.hrp-attendance-times small{color:var(--hrp-muted); font-size:.68rem;}.hrp-attendance-times b{margin-top:1px; font-size:.78rem;}.hrp-attendance-detail{margin:8px 0 0; color:#687184; font-size:.72rem; line-height:1.4;}.hrp-attendance-empty{min-height:190px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; padding:20px; border:1px dashed #ccd2dc; border-radius:8px; background:#fff; color:var(--hrp-muted); text-align:center;}.hrp-attendance-empty .fa{color:var(--hrp-blue); font-size:1.4rem;}.hrp-attendance-empty strong{color:var(--hrp-ink);}.hrp-attendance-empty span{font-size:.78rem;}.hrp-grid{display:grid; gap:14px;}.hrp-actions{grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:20px;}.hrp-schedule-update{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; padding:11px 14px; border:1px solid var(--hrp-blue-line); border-left:4px solid var(--hrp-blue); border-radius:8px; background:var(--hrp-blue-soft); color:var(--hrp-blue-ink); font-size:.82rem; font-weight:750;}.hrp-schedule-update[hidden]{display:none !important;}.hrp-schedule-update .hrp-button{flex:0 0 auto;}.hrp-shift-action-banner{display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:11px; margin:0 0 14px; padding:12px 13px; border:1px solid var(--hrp-blue-line); border-left:4px solid var(--hrp-blue); border-radius:8px; background:var(--hrp-blue-soft);}.hrp-shift-action-icon{width:40px; height:40px; display:grid; place-items:center; border-radius:8px; background:#fff; color:var(--hrp-blue-ink); font-size:1rem;}.hrp-shift-action-copy strong{display:block; color:var(--hrp-blue-ink); font-size:.84rem;}.hrp-shift-action-copy span{display:block; margin-top:2px; color:#536078; font-size:.74rem; line-height:1.35;}.hrp-shift-action-banner .hrp-button{white-space:nowrap;}.hrp-profile-reminder{margin-bottom:13px; padding:10px 12px; border:1px solid var(--hrp-blue-line); border-left:4px solid var(--hrp-blue); border-radius:8px; background:var(--hrp-blue-soft);}.hrp-profile-reminder-details{margin:0;}.hrp-profile-reminder-summary{display:grid; grid-template-columns:44px minmax(0,1fr) 20px; align-items:center; gap:11px; min-height:44px; cursor:pointer; list-style:none;}.hrp-profile-reminder-summary::-webkit-details-marker{display:none;}.hrp-profile-reminder-summary > .fa{color:var(--hrp-blue-ink); text-align:center; transition:transform .16s ease;}.hrp-profile-reminder-details[open] .hrp-profile-reminder-summary > .fa{transform:rotate(180deg);}.hrp-profile-reminder-copy strong{display:block; color:var(--hrp-blue-ink);}.hrp-profile-reminder-copy span{display:block; margin-top:2px; color:#4b5870; font-size:.76rem; line-height:1.35;}.hrp-profile-reminder-ring{position:relative; width:44px; height:44px; display:grid; place-items:center; border-radius:50%; background:conic-gradient(var(--hrp-blue) calc(var(--hrp-profile-percent) * 1%), rgba(49,95,159,.16) 0);}.hrp-profile-reminder-ring::before{content:''; position:absolute; inset:5px; border-radius:50%; background:var(--hrp-blue-soft);}.hrp-profile-reminder-ring span{position:relative; z-index:1; margin:0; color:var(--hrp-blue-ink); font-size:.66rem; font-weight:850; line-height:1;}.hrp-profile-missing-list{margin:10px 0 0 55px; padding-top:6px; border-top:1px solid rgba(49,95,159,.18);}.hrp-profile-missing-list a{display:grid; grid-template-columns:18px minmax(0,1fr) 18px; align-items:center; gap:7px; min-height:40px; color:#3f506b; text-decoration:none;}.hrp-profile-missing-list a + a{border-top:1px solid rgba(49,95,159,.12);}.hrp-profile-missing-list .fa:first-child{color:var(--hrp-blue);}.hrp-profile-missing-list .fa:last-child{color:#7d899c; text-align:right;}.hrp-profile-review-copy{margin:10px 0 2px 55px; color:#4b5870; font-size:.76rem; line-height:1.4;}.hrp-profile-next-action{display:grid; grid-template-columns:minmax(0,1fr) 18px; grid-template-rows:auto auto; align-items:center; column-gap:10px; row-gap:3px; min-height:50px; margin-top:8px; padding:9px 0 2px 55px; border-top:1px solid rgba(49,95,159,.18); color:var(--hrp-blue-ink); text-decoration:none !important;}.hrp-profile-next-action > span{grid-column:1; grid-row:1; color:#687890; font-size:.7rem; font-weight:750; line-height:1.2; text-transform:uppercase;}.hrp-profile-next-action > strong{grid-column:1; grid-row:2; min-width:0; font-size:.92rem; line-height:1.35; overflow-wrap:anywhere;}.hrp-profile-next-action > .fa{grid-column:2; grid-row:1 / span 2; text-align:right;}.hrp-profile-next-action *, .hrp-profile-missing-list a *{text-decoration:none !important;}#wrapwrap .hrp-page a.hrp-profile-next-action, #wrapwrap .hrp-page a.hrp-profile-next-action:hover, #wrapwrap .hrp-page a.hrp-profile-next-action:focus, #wrapwrap .hrp-page a.hrp-profile-next-action:active, #wrapwrap .hrp-page .hrp-profile-missing-list a, #wrapwrap .hrp-page .hrp-profile-missing-list a:hover, #wrapwrap .hrp-page .hrp-profile-missing-list a:focus, #wrapwrap .hrp-page .hrp-profile-missing-list a:active{text-decoration:none !important; text-decoration-line:none !important; border-bottom:0 !important;}.hrp-field[id^="profile-field-"]{scroll-margin-top:24px;}.hrp-field[id^="profile-field-"]:target .hrp-input{border-color:var(--hrp-blue); box-shadow:0 0 0 3px rgba(49,95,159,.14);}.hrp-two{display:grid; grid-template-columns:1fr 1fr; gap:10px;}.hrp-birthdate-selects{display:grid; grid-template-columns:.8fr .9fr 1.2fr; gap:8px;}.hrp-calendar form{flex:0 0 112px; margin:0; scroll-snap-align:start;}.hrp-day-button{width:112px; min-height:108px; text-align:left; border:1px solid #d8dde6; border-radius:8px; padding:9px; background:#fff; box-sizing:border-box; cursor:pointer; touch-action:manipulation; color:var(--hrp-ink);}.hrp-day-button:hover{border-color:var(--hrp-blue);}.hrp-day-button:disabled{cursor:not-allowed;}.hrp-day-weekend{background:var(--hrp-red-soft); border-color:var(--hrp-red-line);}.hrp-day-full{opacity:.62;}.hrp-day-selected{background:var(--hrp-blue-soft); border-color:var(--hrp-blue-line); box-shadow:inset 0 3px 0 var(--hrp-blue);}.hrp-day-top{display:flex; align-items:center; justify-content:space-between; gap:4px;}.hrp-day-name{color:#303542; font-size:.86rem; font-weight:850; line-height:1.15;}.hrp-badge{border-radius:999px; padding:2px 5px; font-size:.68rem; font-weight:800;}.hrp-badge-open{background:var(--hrp-green-soft); color:var(--hrp-green-ink);}.hrp-badge-full{background:var(--hrp-red-soft); color:var(--hrp-red-ink);}.hrp-day-date{margin-top:6px; color:#172033; font-size:1.16rem; font-weight:900; line-height:1.1;}.hrp-day-meta{color:#6d7482; font-size:.68rem; margin-top:1px;}.hrp-request-names{max-height:54px; overflow-y:auto; margin-top:6px; padding-top:5px; border-top:1px solid #e5e8ee;}.hrp-request-title{display:block; margin-bottom:2px; color:#737b8a; font-size:.68rem; font-weight:800;}.hrp-request-name{color:#676f7d; font-size:.7rem; line-height:1.2; overflow-wrap:anywhere;}.hrp-day-action{margin-top:7px; color:var(--hrp-blue-ink); font-size:.7rem; font-weight:750;}.hrp-day-date, .hrp-day-meta, .hrp-request-names, .hrp-request-name, .hrp-day-action{display:block;}.hrp-slot-banner{display:flex; justify-content:space-between; gap:16px; align-items:flex-start; margin:0 0 14px; padding:14px 16px; background:var(--hrp-blue-soft); border:1px solid var(--hrp-blue-line); border-left:4px solid var(--hrp-blue); border-radius:8px;}.hrp-slot-title{color:var(--hrp-blue-ink); font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:0;}.hrp-slot-value{margin-top:4px; color:#4b5870; font-size:.82rem; line-height:1.45;}.hrp-team-list{overflow:hidden; border:1px solid var(--hrp-line); border-radius:8px; background:#fff; box-shadow:0 5px 18px rgba(48,53,66,.04);}.hrp-team-row{display:grid; grid-template-columns:110px minmax(120px,.55fr) minmax(0,1.45fr); gap:12px; align-items:start; padding:13px 14px; border-top:1px solid #e8ebf0;}.hrp-team-row:first-child{border-top:0;}.hrp-team-date{color:#5f6879; font-size:.78rem; font-weight:800;}.hrp-team-shift{color:var(--hrp-ink); font-weight:800;}.hrp-team-names{color:#626b7b; line-height:1.45; overflow-wrap:anywhere;}.hrp-shift-request-list{border:1px solid var(--hrp-line); border-radius:8px; overflow:hidden; background:#fff; box-shadow:0 5px 18px rgba(48,53,66,.04);}.hrp-request-heading{display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:10px;}.hrp-request-heading .hrp-section-title{margin-bottom:3px;}.hrp-request-heading p{margin:0; color:var(--hrp-muted); font-size:.78rem; line-height:1.4;}.hrp-request-filter{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:3px; margin-bottom:12px; padding:3px; border:1px solid var(--hrp-line); border-radius:8px; background:#eef1f5;}.hrp-report-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 12px;}.hrp-schedule-notice{display:inline-flex; align-items:center; width:fit-content; margin-inline-start:.45rem; padding:.15rem .45rem; border:1px solid color-mix(in srgb,var(--hrp-accent) 32%,transparent); border-radius:999px; background:color-mix(in srgb,var(--hrp-accent) 10%,white); color:var(--hrp-ink); font-size:.75rem; font-weight:700; line-height:1.2;}.hrp-request-filter button{display:flex; align-items:center; justify-content:center; gap:6px; min-width:0; min-height:40px; padding:8px; border:0; border-radius:6px; background:transparent; color:#667083; font:inherit; font-size:.78rem; font-weight:800; cursor:pointer; touch-action:manipulation;}.hrp-request-filter button.is-active{background:#fff; color:var(--hrp-blue-ink); box-shadow:0 1px 4px rgba(36,48,65,.12);}.hrp-request-filter-count{min-width:18px; padding:1px 5px; border-radius:9px; background:var(--hrp-blue-soft); color:var(--hrp-blue-ink); font-size:.66rem; line-height:16px;}.hrp-request-pane[hidden]{display:none;}.hrp-request-hint{margin:0 0 10px; color:#697386; font-size:.76rem; line-height:1.4;}.hrp-request-month{padding:8px 13px; border-top:1px solid #e8ebf0; background:#f5f7fa; color:#697386; font-size:.7rem; font-weight:850; text-transform:uppercase;}.hrp-request-month:first-child{border-top:0;}.hrp-shift-request-row{padding:14px; border-top:1px solid #e8ebf0;}.hrp-shift-request-row.is-open{border-left:4px solid var(--hrp-blue); background:#fbfdff;}.hrp-shift-request-row:first-child{border-top:0;}.hrp-shift-request-head{display:flex; align-items:flex-start; justify-content:space-between; gap:12px;}.hrp-shift-request-date{color:var(--hrp-ink); font-weight:800;}.hrp-shift-request-meta{margin-top:3px; color:#707785; font-size:.76rem;}.hrp-shift-request-status{flex:0 0 auto; padding:4px 7px; border-radius:999px; background:var(--hrp-blue-soft); color:var(--hrp-blue-ink); font-size:.72rem; font-weight:800;}.hrp-shift-request-status.is-approved{background:var(--hrp-green-soft); color:var(--hrp-green-ink);}.hrp-shift-request-status.is-waiting{background:var(--hrp-yellow-soft); color:#775813;}.hrp-shift-request-status.is-declined{background:var(--hrp-red-soft); color:var(--hrp-red-ink);}.hrp-shift-request-status.is-cancelled{background:#eef0f3; color:#697180;}.hrp-profile-progress{margin:0 0 18px; padding:16px; border:1px solid var(--hrp-blue-line); border-radius:8px; background:var(--hrp-blue-soft);}.hrp-profile-progress-head{display:flex; align-items:center; justify-content:space-between; gap:12px;}.hrp-profile-progress-title{color:var(--hrp-blue-ink); font-size:.9rem; font-weight:850;}.hrp-profile-progress-count{flex:0 0 auto; color:var(--hrp-blue-ink); font-size:.76rem; font-weight:800;}.hrp-profile-progress-bar{height:7px; margin:10px 0 12px; overflow:hidden; border-radius:4px; background:rgba(255,255,255,.82);}.hrp-profile-progress-value{display:block; height:100%; border-radius:4px; background:var(--hrp-blue);}.hrp-profile-checklist{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 12px;}.hrp-profile-check{display:flex; align-items:flex-start; gap:7px; min-width:0; color:#536078; font-size:.75rem; line-height:1.25;}.hrp-profile-check .fa{flex:0 0 auto; margin-top:1px; color:var(--hrp-red);}.hrp-profile-check.is-complete{color:#496358;}.hrp-profile-check.is-complete .fa{color:var(--hrp-green);}.hrp-profile-intro{margin-bottom:12px;}.hrp-profile-save-help{margin:0;}.hrp-profile-sections{display:grid; gap:9px;}.hrp-profile-section{overflow:hidden; border:1px solid var(--hrp-line); border-radius:8px; background:#fff; box-shadow:0 4px 14px rgba(48,53,66,.04); scroll-margin-top:12px;}.hrp-profile-section > summary{display:grid; grid-template-columns:38px minmax(0,1fr) 18px; align-items:center; gap:10px; min-height:60px; padding:10px 13px; color:var(--hrp-ink); cursor:pointer; list-style:none; touch-action:manipulation;}.hrp-profile-section > summary::-webkit-details-marker{display:none;}.hrp-profile-section > summary > span:nth-child(2){min-width:0;}.hrp-profile-section > summary strong, .hrp-profile-section > summary small{display:block; overflow-wrap:anywhere;}.hrp-profile-section > summary strong{font-size:.88rem;}.hrp-profile-section > summary small{margin-top:2px; color:var(--hrp-muted); font-size:.72rem; line-height:1.3;}.hrp-profile-section > summary > .fa-chevron-down{color:#7a8392; text-align:center; transition:transform .16s ease;}.hrp-profile-section[open] > summary{background:var(--hrp-blue-soft); color:var(--hrp-blue-ink);}.hrp-profile-section[open] > summary > .fa-chevron-down{transform:rotate(180deg);}.hrp-profile-section-icon{width:34px; height:34px; display:grid; place-items:center; border-radius:7px; background:#f1f4f8; color:#59667a;}.hrp-profile-section[open] .hrp-profile-section-icon{background:#fff; color:var(--hrp-blue);}.hrp-profile-section-body{padding:16px; border-top:1px solid var(--hrp-line);}.hrp-profile-section-body > .hrp-button{width:100%;}.hrp-profile-finish{margin-top:12px; scroll-margin-top:12px;}.hrp-profile-finish .hrp-section-title{margin-top:0;}.hrp-profile-privacy-check{display:flex; align-items:flex-start; gap:9px; margin:0 0 14px;}.hrp-profile-privacy-check input{flex:0 0 auto; margin-top:3px;}.hrp-profile-access{margin-top:12px;}.hrp-profile-divider{margin:24px 0; border:0; border-top:1px solid var(--hrp-line);}.hrp-profile-logout{margin-top:18px; padding-top:16px; border-top:1px solid var(--hrp-line);}.hrp-profile-logout .hrp-button{width:100%;}.hrp-shift-request-form{margin-top:12px; padding-top:12px; border-top:1px solid #eceef2;}.hrp-shift-request-form summary{color:var(--hrp-blue-ink); font-weight:800; cursor:pointer;}.hrp-shift-request-form.is-primary summary{display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:42px; padding:9px 11px; border:1px solid var(--hrp-blue-line); border-radius:7px; background:var(--hrp-blue-soft); list-style:none;}.hrp-shift-request-form.is-primary summary::-webkit-details-marker{display:none;}.hrp-shift-request-form.is-primary summary .fa-chevron-down{transition:transform .16s ease;}.hrp-shift-request-form.is-primary[open] summary .fa-chevron-down{transform:rotate(180deg);}.hrp-shift-request-form .hrp-button{width:100%;}.hrp-request-flow-note, .hrp-empty{display:flex; align-items:flex-start; gap:9px; min-height:48px; margin:0 0 12px; padding:11px 13px; border:1px solid var(--hrp-line); border-radius:12px; background:#fff; color:#687184; font-size:.78rem; line-height:1.4; text-align:left; box-shadow:0 2px 8px rgba(41,46,56,.04);}.hrp-request-flow-note::before, .hrp-empty::before{flex:0 0 18px; width:18px; color:#8a93a2; font-family:FontAwesome; font-size:.92rem; line-height:1.35; text-align:center;}.hrp-request-flow-note::before{content:'\f05a'; color:var(--hrp-blue);}.hrp-empty::before{content:'\f1da';}.hrp-message-row{display:flex; align-items:flex-start; gap:9px; min-height:48px; margin:0 0 12px; padding:11px 13px; border:1px solid var(--hrp-line); border-radius:12px; background:#fff; color:#687184; font-size:.78rem; line-height:1.4; text-align:left; box-shadow:0 2px 8px rgba(41,46,56,.04);}.hrp-message-row .fa{width:18px; flex:0 0 18px; margin-top:1px; color:#8a93a2; font-size:.92rem; line-height:1.2; text-align:center;}.hrp-message-row.is-info .fa{color:var(--hrp-blue);}.hrp-request-reason{margin-top:8px; padding-top:8px; border-top:1px solid #e8ebf0; color:#626b7b; font-size:.8rem; line-height:1.45;}.hrp-swap-actions{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; padding-top:12px; border-top:1px solid #eceef2;}.hrp-swap-actions form{flex:1 1 140px; margin:0;}.hrp-swap-actions .hrp-button{width:100%;}.hrp-table{border:1px solid var(--hrp-line); border-radius:8px; overflow:hidden; background:#fff; margin-bottom:20px; box-shadow:0 5px 18px rgba(48,53,66,.04);}.hrp-row{display:grid; gap:12px; align-items:center; padding:12px 14px; border-top:1px solid #e8ebf0;}.hrp-row:first-child{border-top:none;}.hrp-table-head{background:var(--hrp-green-soft); color:var(--hrp-green-ink); font-size:.71rem; font-weight:800; text-transform:uppercase;}.hrp-dayoff-row{grid-template-columns:1.4fr .85fr .65fr auto;}.hrp-mobile-label{display:none;}.hrp-empty{margin-bottom:12px;}.hrp-footer{margin-top:34px; text-align:center; color:#9299a6; font-size:.76rem;}.hrp-page{--hrp-ink:#292e38; --hrp-muted:#626b79; --hrp-blue:#315f9f; --hrp-blue-soft:#edf4ff; --hrp-blue-line:#bfd1e8; --hrp-blue-ink:#244d84; --hrp-green:#347451; --hrp-green-soft:#eaf5ee; --hrp-green-line:#c1ddca; --hrp-green-ink:#2f6844; --hrp-yellow:#a87916; --hrp-yellow-soft:#fff6d8; --hrp-yellow-line:#ead79b; --hrp-yellow-ink:#6b5418; --hrp-red:#ad4f5d; --hrp-red-soft:#fbecef; --hrp-red-line:#e5bec5; --hrp-red-ink:#7e3945; --hrp-orange:#d47f56; --hrp-orange-soft:#fff7f2; --hrp-accent:var(--hrp-orange); --hrp-canvas:#edf1f5; --hrp-line:#e0e5ec; background:var(--hrp-canvas); padding:16px 14px 104px;}.hrp-panel-host{position: relative;}.hrp-panel-host.is-loading::before{position: absolute; z-index: 2; top: 0; left: 0; width: 42%; height: 3px; content: ""; background: var(--hrp-accent, #d57932); animation: hrp-navigation-progress .8s ease-in-out infinite alternate;}.hrp-panel-host.is-loading{cursor: progress;}.hrp-navigation-error{margin-bottom: 12px;}@keyframes hrp-navigation-progress{from{transform: translateX(-35%);}to{transform: translateX(175%);}}.hrp-header{padding:11px 13px; margin-bottom:12px; border:1px solid #dce2ea; border-radius:14px; background:#fff; box-shadow:0 5px 16px rgba(41,46,56,.07);}.hrp-avatar{background:var(--hrp-blue-soft); color:var(--hrp-blue-ink); box-shadow:0 0 0 3px #f3f7fc;}.hrp-tabs{bottom:8px; width:min(720px, calc(100% - 16px)); padding:6px 6px calc(7px + env(safe-area-inset-bottom)); border:1px solid #dce2ea; border-radius:14px; box-shadow:0 5px 18px rgba(41,46,56,.10);}.hrp-tab{min-height:57px; color:#667080; font-weight:700;}.hrp-tab.is-active{color:var(--hrp-orange); font-weight:850;}.hrp-tab.is-active .hrp-tab-icon{background:transparent; color:var(--hrp-orange);}.hrp-tab.is-active .hrp-tab-icon::after{display:none;}.hrp-tab-badge{background:var(--hrp-red); color:#fff;}.hrp-card, .hrp-team-list, .hrp-shift-request-list, .hrp-table, .hrp-summary{border-color:var(--hrp-line); border-radius:12px; box-shadow:0 4px 16px rgba(41,46,56,.06);}.hrp-card-pad{padding:18px;}.hrp-section-title{margin:22px 0 10px; font-size:1rem;}.hrp-section-title::after{background:#dfe4eb;}.hrp-today{border-width:0 0 0 5px; border-radius:12px; padding:20px 21px; box-shadow:0 8px 22px rgba(41,46,56,.11);}.hrp-today-status{background:rgba(255,255,255,.48);}.hrp-week-day, .hrp-schedule-day{border-color:#dbe1e9; border-radius:10px; box-shadow:0 2px 8px rgba(41,46,56,.05);}.hrp-week-day.is-today, .hrp-schedule-day.is-today{border-color:var(--hrp-blue); box-shadow:0 0 0 2px rgba(49,95,159,.14);}.hrp-quick-action{border-color:#dfe4eb; min-height:68px; padding:10px 11px; border-radius:12px; box-shadow:0 4px 14px rgba(41,46,56,.06);}.hrp-quick-action:hover{border-color:var(--hrp-blue-line); background:#fbfdff;}.hrp-quick-icon{background:var(--hrp-blue-soft); color:var(--hrp-blue-ink);}.hrp-quick-icon.is-sage{background:var(--hrp-blue-soft); color:var(--hrp-blue-ink);}.hrp-quick-icon.is-moon{background:var(--hrp-yellow-soft); color:var(--hrp-yellow-ink);}.hrp-summary-item:first-child{background:var(--hrp-blue-soft);}.hrp-summary-item:last-child{background:#fff;}.hrp-summary-item{min-height:96px; padding:14px;}.hrp-performance-item{min-height:128px; padding:12px; border-radius:12px;}.hrp-performance-item.is-sick{border-color:var(--hrp-blue-line); background:var(--hrp-blue-soft);}.hrp-performance-item.is-late{border-color:var(--hrp-yellow-line); background:var(--hrp-yellow-soft);}.hrp-performance-item.is-absent{border-color:var(--hrp-red-line); background:var(--hrp-red-soft);}.hrp-day-button{width:100%; min-height:74px; display:grid; grid-template-columns:58px minmax(0,1fr) auto; grid-template-rows:auto auto auto; column-gap:12px; align-items:center; border-color:#e1e5eb; border-radius:13px; padding:11px 13px; box-shadow:0 1px 2px rgba(41,46,56,.05), 0 2px 8px rgba(41,46,56,.05);}.hrp-calendar{display:flex; flex-direction:column; gap:9px; overflow:visible; padding:2px 0 12px;}.hrp-calendar form{width:100%; flex:0 0 auto;}.hrp-day-top{display:contents;}.hrp-day-name{grid-column:2; grid-row:1; text-align:left; font-size:.82rem;}.hrp-day-top .hrp-badge{display:none;}.hrp-day-date{grid-column:1; grid-row:1 / span 3; margin:0; text-align:center; font-size:1rem; line-height:1.2;}.hrp-day-meta{grid-column:3; grid-row:1 / span 3; align-self:center; margin:0; padding:5px 9px; border-radius:999px; background:var(--hrp-green-soft); color:var(--hrp-green-ink); font-size:.7rem; font-weight:800; white-space:nowrap;}.hrp-request-names{grid-column:2; grid-row:2 / span 2; max-height:none; overflow:visible; margin:2px 0 0; padding:0; border:0; text-align:left;}.hrp-request-title{display:inline; margin:0; font-weight:600;}.hrp-request-name{display:inline;}.hrp-request-name + .hrp-request-name::before{content:', ';}.hrp-day-action{display:none;}.hrp-day-weekend{background:var(--hrp-orange-soft); border-color:#efd6c8;}.hrp-day-full .hrp-day-meta{background:var(--hrp-red-soft); color:var(--hrp-red-ink);}.hrp-day-selected{background:var(--hrp-yellow-soft); border-color:var(--hrp-yellow-line); box-shadow:inset 4px 0 0 var(--hrp-yellow);}.hrp-slot-banner, .hrp-profile-progress, .hrp-schedule-update, .hrp-profile-reminder{border-radius:12px;}.hrp-table-head{background:var(--hrp-blue-soft); color:var(--hrp-blue-ink);}.hrp-shift-request-status{background:var(--hrp-blue-soft); color:var(--hrp-blue-ink);}.hrp-team-row{padding:12px 13px;}.hrp-shift-request-row{padding:12px 13px;}.hrp-row{padding:11px 13px;}.hrp-empty{padding:11px 13px;}.hrp-tab, .hrp-day-button, .hrp-quick-action, .hrp-request-filter button, .hrp-profile-reminder-summary, .hrp-profile-next-action, .hrp-shift-request-form summary{-webkit-tap-highlight-color:transparent; touch-action:manipulation; transition: transform .08s ease, box-shadow .08s ease, background-color .12s ease, border-color .12s ease;}a.hrp-button, a.hrp-button:hover, a.hrp-button:focus, a.hrp-button:active, a.hrp-button:visited, .hrp-profile-next-action, .hrp-profile-next-action:hover, .hrp-profile-next-action:focus, .hrp-profile-next-action:active, .hrp-profile-next-action:visited, .hrp-profile-missing-list a, .hrp-profile-missing-list a:hover, .hrp-profile-missing-list a:focus, .hrp-profile-missing-list a:active, .hrp-profile-missing-list a:visited{text-decoration:none !important;}.hrp-tab:active, .hrp-day-button:not(:disabled):active, .hrp-quick-action:active, .hrp-request-filter button:active, .hrp-profile-reminder-summary:active, .hrp-profile-next-action:active, .hrp-shift-request-form summary:active{transform:translateY(1px) scale(.99); box-shadow:none;}@media (max-width:760px){.hrp-page{padding:8px 8px calc(82px + env(safe-area-inset-bottom));}.hrp-header{margin:0 0 11px; padding:10px 12px;}.hrp-brand-mark{width:36px; height:36px; flex-basis:36px;}.hrp-brand-title{font-size:1rem;}.hrp-brand-subtitle{font-size:.7rem;}.hrp-header-actions{gap:6px;}.hrp-language-control{width:160px;}.hrp-user-name{max-width:112px;}.hrp-avatar{width:36px; height:36px; flex-basis:36px;}.hrp-today{padding:16px;}.hrp-today-head{align-items:flex-start;}.hrp-today-shift{margin-top:10px; font-size:1.48rem;}.hrp-today-note{margin-top:4px; font-size:.8rem;}.hrp-today-punches{gap:5px; margin-top:9px;}.hrp-today-punch{min-width:64px; padding:6px 7px;}.hrp-today-attendance-status{min-width:102px;}.hrp-today-team{font-size:.74rem;}.hrp-week-strip{gap:3px; padding:2px 0 7px; margin:0 0 9px;}.hrp-schedule{gap:7px; overflow-x:auto; padding:3px 3px 10px; margin:0 -3px 12px; scroll-snap-type:x mandatory;}.hrp-week-day{width:auto; min-width:0; min-height:72px; padding:6px 2px;}.hrp-schedule-day{flex:0 0 82px; width:82px; min-width:82px; min-height:92px; padding:9px; overflow:hidden;}.hrp-schedule-day.has-action{min-height:112px;}.hrp-week-date, .hrp-schedule-date{font-size:.72rem; line-height:1.25;}.hrp-week-weekday{font-size:.68rem;}.hrp-week-number{font-size:.82rem;}.hrp-week-shift{margin-top:5px; font-size:.68rem; line-height:1.15;}.hrp-schedule-shift{margin-top:6px; font-size:.78rem; line-height:1.15;}.hrp-schedule-code{font-size:.68rem;}.hrp-calendar{display:flex; flex-direction:column; gap:7px; overflow:visible; padding:0; margin-bottom:12px; scroll-snap-type:none;}.hrp-calendar form{width:100%; min-width:0; margin:0;}.hrp-day-button{width:100%; min-width:0; min-height:66px; padding:8px 10px;}.hrp-day-name{font-size:.79rem;}.hrp-badge{padding:1px 4px; font-size:.68rem;}.hrp-day-date{margin:0; font-size:1rem;}.hrp-day-meta{font-size:.68rem;}.hrp-request-names{max-height:none; margin-top:2px; padding:0;}.hrp-request-name{font-size:.68rem; line-height:1.15;}.hrp-quick-actions{gap:7px;}.hrp-quick-action{min-height:60px; grid-template-columns:32px minmax(0,1fr); gap:8px; padding:8px 9px;}.hrp-quick-icon{width:32px; height:32px;}.hrp-quick-arrow{display:none;}.hrp-quick-action strong{font-size:.75rem;}.hrp-quick-action small{font-size:.7rem;}.hrp-summary{grid-template-columns:repeat(2,minmax(0,1fr));}.hrp-performance{gap:6px;}.hrp-performance-item{min-height:108px; padding:9px 8px;}.hrp-performance-top{align-items:flex-start; flex-direction:column; gap:5px;}.hrp-performance-icon{width:24px; height:24px; flex-basis:24px;}.hrp-performance-label{font-size:.68rem; line-height:1.2;}.hrp-performance-value{font-size:2rem;}.hrp-performance-meta{font-size:.68rem;}.hrp-attendance-heading{align-items:flex-start;}.hrp-attendance-heading h2{font-size:1.2rem;}.hrp-attendance-private{padding:5px 7px;}.hrp-attendance-summary{grid-template-columns:repeat(2,minmax(0,1fr));}.hrp-attendance-summary > div:nth-child(2){border-right:0;}.hrp-attendance-summary > div:nth-child(-n+2){border-bottom:1px solid var(--hrp-line);}.hrp-attendance-row{grid-template-columns:68px minmax(0,1fr);}.hrp-attendance-date{padding:10px 5px;}.hrp-attendance-date strong{font-size:1.25rem;}.hrp-attendance-main{padding:10px;}.hrp-attendance-row-head{flex-direction:column; gap:6px;}.hrp-attendance-status{align-self:flex-start;}.hrp-attendance-times{gap:7px 13px; margin-top:8px;}.hrp-summary-slot{grid-column:auto;}.hrp-summary-item{min-height:76px; padding:8px;}.hrp-summary-label{font-size:.7rem; line-height:1.25;}.hrp-summary-value{margin-top:5px; font-size:1.05rem; overflow-wrap:anywhere;}.hrp-summary-meta{display:-webkit-box; overflow:hidden; font-size:.72rem; line-height:1.3; -webkit-box-orient:vertical; -webkit-line-clamp:3;}.hrp-slot-banner{padding:10px 12px; margin-bottom:10px;}.hrp-profile-reminder{padding:9px 10px;}.hrp-profile-reminder-summary{grid-template-columns:40px minmax(0,1fr) 18px; gap:8px;}.hrp-profile-reminder-ring{width:40px; height:40px;}.hrp-profile-missing-list{margin-left:0;}.hrp-profile-review-copy{margin-left:0;}.hrp-profile-next-action{grid-template-columns:minmax(0,1fr) 16px; padding-left:0;}.hrp-schedule-update{align-items:stretch; flex-direction:column;}.hrp-schedule-update .hrp-button{width:100%;}.hrp-shift-action-banner{grid-template-columns:36px minmax(0,1fr); padding:10px;}.hrp-shift-action-icon{width:36px; height:36px;}.hrp-shift-action-banner .hrp-button{grid-column:1 / -1; width:100%;}.hrp-team-row{grid-template-columns:82px minmax(0,1fr); gap:5px 9px; padding:10px;}.hrp-team-names{grid-column:1 / -1; padding-top:4px; border-top:1px solid #eceef2; font-size:.78rem;}.hrp-shift-request-head{align-items:flex-start; flex-direction:column; gap:8px;}.hrp-shift-request-status{max-width:100%; overflow-wrap:anywhere;}.hrp-request-heading p{font-size:.74rem;}.hrp-request-filter button{min-height:42px; padding:7px 4px; font-size:.72rem;}.hrp-request-filter{grid-template-columns:repeat(2,minmax(0,1fr));}.hrp-report-grid{grid-template-columns:1fr; gap:0;}.hrp-swap-actions{display:grid; grid-template-columns:1fr 1fr;}.hrp-actions{grid-template-columns:1fr;}.hrp-two{grid-template-columns:1fr;}.hrp-dayoff-row{grid-template-columns:1fr;}.hrp-table-head{display:none;}.hrp-row{gap:6px;}.hrp-card-pad{padding:14px;}.hrp-section-title{font-size:.94rem; margin:17px 0 9px;}.hrp-dayoff-row > .hrp-dayoff-cell{display:grid; grid-template-columns:102px minmax(0,1fr); gap:8px;}.hrp-mobile-label{display:block; color:#747c8b; font-size:.72rem; font-weight:800; text-transform:uppercase;}.hrp-tabs{padding:5px 5px calc(6px + env(safe-area-inset-bottom));}.hrp-tab{min-height:47px; font-size:.7rem; gap:2px;}.hrp-tab-icon{width:28px; height:25px;}.hrp-tab .fa{font-size:1rem;}.hrp-footer{margin-top:22px; font-size:.72rem;}.hrp-profile-checklist{grid-template-columns:1fr; gap:7px;}.hrp-profile-check{font-size:.72rem;}.hrp-profile-section > summary{grid-template-columns:34px minmax(0,1fr) 16px; gap:8px; min-height:56px; padding:9px 10px;}.hrp-profile-section-icon{width:32px; height:32px;}.hrp-profile-section-body{padding:12px;}}@media (max-width:420px){.hrp-header{gap:10px;}.hrp-brand-lockup > div{display:none;}.hrp-user > div:first-child{display:none;}.hrp-language-control{width:160px;}.hrp-day-button{min-height:66px; grid-template-columns:48px minmax(0,1fr) auto; column-gap:8px;}}@media (max-width:350px){.hrp-brand-subtitle{display:none;}.hrp-avatar{display:none;}.hrp-language-control{width:156px;}.hrp-quick-actions{grid-template-columns:1fr;}}@media (prefers-reduced-motion:reduce){.hrp-tab, .hrp-day-button, .hrp-quick-action, .hrp-profile-next-action{transition:none;}}.hrp-availability-section{margin-bottom: 20px; padding: 16px; border: 1px solid #d9ddea; border-left: 4px solid #6d668f; border-radius: 8px; background: #fff;}.hrp-availability-heading h3{display: inline; margin: 0 0 0 8px; color: #303542; font-size: 1.05rem;}.hrp-availability-heading p{margin: 8px 0 0; color: #687083;}.hrp-availability-badge{display: inline-flex; min-height: 24px; align-items: center; padding: 2px 8px; border: 1px solid #c9c5df; border-radius: 12px; background: #efedf8; color: #554f78; font-weight: 800; font-size: 0.78rem;}.hrp-availability-weeks{margin-top: 14px; border-top: 1px solid #e4e7ee;}.hrp-availability-week{border-bottom: 1px solid #e4e7ee;}.hrp-availability-week > summary{display: flex; min-height: 48px; align-items: center; justify-content: space-between; cursor: pointer; color: #303542; list-style: none;}.hrp-availability-week > summary::-webkit-details-marker{display: none;}.hrp-availability-week[open] > summary .fa-chevron-down{transform: rotate(180deg);}.hrp-availability-week form{padding-bottom: 16px;}.hrp-availability-days{display: grid; gap: 8px; margin-bottom: 14px;}.hrp-availability-day{display: grid; grid-template-columns: minmax(90px, 0.35fr) minmax(0, 1fr); gap: 10px; align-items: center; min-height: 50px; padding: 8px 0; border-bottom: 1px solid #eef0f4;}.hrp-availability-date{display: flex; flex-direction: column; color: #303542;}.hrp-availability-date span{color: #7a8190; font-size: 0.84rem;}.hrp-availability-shifts{display: flex; flex-wrap: wrap; gap: 7px;}.hrp-availability-shift input{position: absolute; opacity: 0; pointer-events: none;}.hrp-availability-shift span{display: inline-flex; min-height: 36px; align-items: center; gap: 7px; padding: 6px 10px; border: 1px solid #d8dce5; border-radius: 6px; background: #f8f9fb; color: #4f5666; font-weight: 700; cursor: pointer;}.hrp-availability-shift span i{width: 10px; height: 10px; border-radius: 2px; background: var(--shift-color);}.hrp-availability-shift input:checked + span{border-color: var(--shift-color); background: var(--shift-color); color: var(--shift-text);}.hrp-availability-shift input:focus-visible + span{outline: 3px solid rgba(54, 105, 169, 0.24); outline-offset: 2px;}@media (max-width: 575.98px){.hrp-availability-section{padding: 14px 12px;}.hrp-availability-day{grid-template-columns: 76px minmax(0, 1fr);}.hrp-availability-shift span{min-height: 40px;}}.hrp-performance-value-text{font-size: 2rem;}.hrp-flexible-weeks{display: grid; gap: 10px; margin: 0 0 14px;}.hrp-attendance-summary.is-flexible{grid-template-columns: repeat(3, minmax(0, 1fr));}.hrp-attendance-summary.is-flexible > div:nth-child(2){border-right: 1px solid var(--hrp-line);}.hrp-attendance-summary.is-flexible > div:nth-child(-n+2){border-bottom: 0;}.hrp-flexible-week{padding: 13px 14px; border: 1px solid var(--hrp-line); border-left: 4px solid var(--hrp-blue); border-radius: 8px; background: #fff;}.hrp-flexible-week.is-met{border-left-color: var(--hrp-green);}.hrp-flexible-week.is-short, .hrp-flexible-week.is-needs_review{border-left-color: var(--hrp-red);}.hrp-flexible-week-head, .hrp-flexible-hours-line{display: flex; align-items: center; justify-content: space-between; gap: 12px;}.hrp-flexible-week-head small, .hrp-flexible-week > small, .hrp-flexible-hours-line span{color: var(--hrp-muted);}.hrp-flexible-week-head strong, .hrp-flexible-week-head small{display: block;}.hrp-flexible-status{padding: 4px 8px; border-radius: 999px; background: var(--hrp-blue-soft); color: var(--hrp-blue); font-size: 0.75rem; font-weight: 800;}.hrp-flexible-status.is-met{background: var(--hrp-green-soft); color: #35664e;}.hrp-flexible-status.is-short, .hrp-flexible-status.is-needs_review{background: var(--hrp-red-soft); color: #92483e;}.hrp-flexible-hours-line{margin-top: 12px;}.hrp-flexible-hours-line strong{font-size: 1.3rem;}.hrp-flexible-progress{height: 7px; margin: 9px 0 7px; overflow: hidden; border-radius: 999px; background: #e9edf2;}.hrp-flexible-progress span{display: block; height: 100%; border-radius: inherit; background: var(--hrp-blue);}.hrp-flexible-week.is-met .hrp-flexible-progress span{background: var(--hrp-green);}@media (max-width: 575.98px){.hrp-attendance-summary.is-flexible{grid-template-columns: 1fr;}.hrp-attendance-summary.is-flexible > div, .hrp-attendance-summary.is-flexible > div:nth-child(2){border-right: 0; border-bottom: 1px solid var(--hrp-line);}.hrp-attendance-summary.is-flexible > div:last-child{border-bottom: 0;}}body .hrp-page{--hrp-ink:#1e332a; --hrp-muted:#5d7065; --hrp-blue:#245940; --hrp-blue-soft:#eaf2e9; --hrp-blue-line:#bdd0bf; --hrp-blue-ink:#19452f; --hrp-red:#b84f48; --hrp-red-soft:#fceceb; --hrp-red-line:#e9bfbb; --hrp-red-ink:#813a35; --hrp-green:#32714c; --hrp-green-soft:#e9f3e9; --hrp-green-line:#c5d9c7; --hrp-green-ink:#265b3c; --hrp-yellow:#9b762b; --hrp-yellow-soft:#fff6df; --hrp-yellow-line:#ead9ad; --hrp-yellow-ink:#6e551d; --hrp-orange:#245940; --hrp-orange-soft:#eaf2e9; --hrp-accent:var(--hrp-orange); --hrp-canvas:#f3f5ee; --hrp-line:#d6dfd3; --hrp-control-border:#bacabd; --hrp-control-focus:rgba(36,89,64,.18); --hrp-control-disabled:#edf1e9; background:var(--hrp-canvas); color:var(--hrp-ink); font-size:16px; line-height:1.45;}.hrp-shell{max-width:820px;}.hrp-header{min-height:64px; margin-bottom:14px; padding:10px 14px; border:1px solid #d6dfd3; border-radius:8px; background:rgba(255,255,255,.94); box-shadow:0 1px 3px rgba(24,57,39,.04);}.hrp-brand-lockup{gap:11px;}.hrp-brand-mark{width:38px; height:38px; flex-basis:38px;}.hrp-brand-kicker{display:block; margin-bottom:1px; color:var(--hrp-muted); font-size:.74rem; font-weight:700; line-height:1.1;}.hrp-brand-title{max-width:260px; overflow:hidden; font-size:1rem; font-weight:820; text-overflow:ellipsis; white-space:nowrap;}.hrp-brand-subtitle, .hrp-user-greeting{font-size:.74rem;}.hrp-header-actions{gap:7px;}.hrp-refresh-button, .hrp-language-control{border-color:#ded8d4; background:#fff; color:#5a514d; box-shadow:none;}.hrp-language-icon{color:var(--hrp-accent);}.hrp-tabs{bottom:8px; width:min(720px, calc(100% - 16px)); padding:5px 6px calc(6px + env(safe-area-inset-bottom)); border:1px solid #e3ddd9; border-radius:8px; background:rgba(255,255,255,.97); box-shadow:0 4px 14px rgba(24,57,39,.09);}.hrp-tab{min-height:52px; border-radius:8px; color:#6f6966; font-weight:700; font-size:.74rem;}.hrp-tab.is-active{background:#fff; color:var(--hrp-accent); box-shadow:0 1px 5px rgba(24,57,39,.08);}.hrp-tab.is-active .hrp-tab-icon{color:var(--hrp-accent);}.hrp-tab-icon .fa, .hrp-quick-icon .fa, .hrp-performance-icon .fa, .hrp-profile-section-icon .fa, .hrp-schedule-card-icon .fa{width:1em; line-height:1; text-align:center; -webkit-font-smoothing:antialiased;}.hrp-tab-icon .fa{font-size:1.08rem;}.hrp-quick-icon .fa, .hrp-schedule-card-icon .fa{font-size:1rem;}.hrp-performance-icon .fa, .hrp-profile-section-icon .fa{font-size:.94rem;}.hrp-tab-badge{background:var(--hrp-red); color:#fff;}.hrp-section-title{margin:20px 0 10px; color:var(--hrp-ink); font-size:1rem;}.hrp-section-title::after{background:#d6dfd3;}.hrp-card, .hrp-team-list, .hrp-shift-request-list, .hrp-table, .hrp-summary, .hrp-profile-section, .hrp-attendance-list{border-color:var(--hrp-line); border-radius:8px; box-shadow:0 1px 3px rgba(24,57,39,.04);}.hrp-today{background:var(--hrp-shift-background); color:var(--hrp-shift-color); border-width:0 0 0 4px; border-left-color:var(--hrp-accent); border-radius:8px; padding:16px; box-shadow:0 1px 4px rgba(24,57,39,.05);}.hrp-today-status, .hrp-today-punch, .hrp-today-awaiting-punch{background:#edf3e9;}.hrp-today-shift{font-size:1.5rem;}.hrp-today-punch small{font-size:.72rem;}.hrp-week-day{min-height:76px; border-color:#d6dfd3; border-radius:7px; padding:7px 4px; box-shadow:none; background:var(--hrp-shift-background); color:var(--hrp-shift-color);}.hrp-week-day.is-today{border-color:var(--hrp-accent); box-shadow:0 0 0 2px color-mix(in srgb, var(--hrp-accent) 18%, transparent);}.hrp-week-shift{margin-top:6px;}.hrp-week-weekday, .hrp-week-shift, .hrp-shift-legend-item{font-size:.72rem;}.hrp-quick-action{min-height:64px; border-color:var(--hrp-line); border-radius:8px; box-shadow:none;}.hrp-quick-action strong{font-size:.86rem;}.hrp-quick-action small{font-size:.74rem;}.hrp-quick-action:hover{border-color:var(--hrp-accent); background:#fff;}.hrp-overview-actions{margin-top:12px;}.hrp-quick-icon, .hrp-quick-icon.is-sage, .hrp-quick-icon.is-moon{background:#f0edea; color:#625b56;}.hrp-performance{gap:8px;}.hrp-performance-item{min-height:112px; padding:11px; border-color:var(--hrp-line) !important; border-radius:8px; background:#fff !important;}.hrp-performance-label, .hrp-performance-meta{font-size:.74rem;}.hrp-performance-value{font-size:2rem;}.hrp-attendance-history-link{border-color:var(--hrp-line); background:#fff; color:var(--hrp-blue-ink); box-shadow:none;}.hrp-summary-item{min-height:88px; padding:13px;}.hrp-summary-label{font-size:.74rem;}.hrp-summary-meta{font-size:.8rem;}.hrp-summary-item:first-child{background:#fff;}.hrp-summary-item:last-child{background:#fff;}.hrp-profile-reminder, .hrp-schedule-update, .hrp-shift-action-banner, .hrp-profile-progress{border-color:var(--hrp-line); border-left-color:var(--hrp-accent); border-radius:8px; background:#fff;}.hrp-profile-reminder-ring{background:conic-gradient(var(--hrp-accent) calc(var(--hrp-profile-percent) * 1%), #f2dad5 0);}.hrp-profile-reminder-ring::before{background:#fff;}.hrp-profile-reminder-copy strong, .hrp-profile-reminder-ring span, .hrp-profile-next-action{color:#783a34;}.hrp-schedule-date-rail{display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:4px; margin:0 0 16px; padding:4px; border:1px solid var(--hrp-line); border-radius:8px; background:#fff;}.hrp-schedule-date-tab{min-width:0; min-height:52px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; border-radius:7px; color:var(--hrp-muted); text-decoration:none;}.hrp-schedule-date-tab span{max-width:100%; overflow:hidden; font-size:.68rem; font-weight:750; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap;}.hrp-schedule-date-tab strong{color:var(--hrp-ink); font-size:.9rem;}.hrp-schedule-date-tab.is-today{background:var(--hrp-accent); color:#fff; box-shadow:none;}.hrp-schedule-date-tab.is-today strong{color:#fff;}.hrp-schedule-list{display:grid; gap:8px; overflow:visible; padding:0; margin-bottom:14px; scroll-snap-type:none;}.hrp-schedule-list .hrp-schedule-day{position:relative; width:100%; min-width:0; min-height:82px; display:grid; grid-template-columns:44px minmax(0,1fr) auto 18px; grid-template-rows:auto auto auto; gap:2px 11px; align-items:center; overflow:hidden; padding:12px 14px; border:1px solid var(--hrp-line); border-left:5px solid var(--hrp-shift-background); border-radius:8px; background:#fff; color:var(--hrp-ink); box-shadow:none; scroll-margin-top:12px;}.hrp-schedule-list .hrp-schedule-day.is-today{border-color:var(--hrp-blue-line); border-left-color:var(--hrp-accent); box-shadow:0 0 0 2px color-mix(in srgb, var(--hrp-accent) 13%, transparent);}.hrp-schedule-card-icon{grid-column:1; grid-row:1 / span 3; width:42px; height:42px; display:grid; place-items:center; border-radius:8px; background:color-mix(in srgb, var(--hrp-shift-background) 45%, #fff); color:var(--hrp-shift-color); font-size:1rem;}.hrp-schedule-list .hrp-schedule-date{grid-column:2; grid-row:1; color:var(--hrp-muted); font-size:.72rem; font-weight:750;}.hrp-schedule-list .hrp-schedule-shift{grid-column:2; grid-row:2; margin:0; color:var(--hrp-ink); font-size:.94rem;}.hrp-schedule-list .hrp-schedule-code{grid-column:2; grid-row:3; margin:0; color:var(--hrp-muted); font-size:.72rem;}.hrp-schedule-location, .hrp-schedule-coworkers{grid-column:2 / 4; min-width:0; white-space:normal; overflow-wrap:anywhere; max-width:none; overflow:hidden; color:#5f5854; font-size:.76rem; line-height:1.35; text-align:left; text-overflow:ellipsis;}.hrp-schedule-location{grid-row:4;}.hrp-schedule-coworkers{grid-row:5;}.hrp-schedule-coworkers span{color:var(--hrp-muted); font-size:.72rem;}.hrp-schedule-list .hrp-schedule-action{grid-column:3; grid-row:1 / span 3; justify-self:end; margin:0; padding:7px 9px; border:0; border-radius:7px; background:#f4f1ef; color:var(--hrp-blue-ink); font-size:.74rem;}.hrp-schedule-list .hrp-schedule-action + .hrp-schedule-chevron, .hrp-schedule-list .hrp-schedule-action ~ .hrp-schedule-chevron{display:none;}.hrp-schedule-chevron{grid-column:4; grid-row:1 / span 3; color:#938b86; font-size:.7rem;}.hrp-request-heading{margin-bottom:10px;}.hrp-request-heading .hrp-section-title{margin-top:0;}.hrp-request-filter{gap:4px; padding:4px; border-color:var(--hrp-line); border-radius:8px; background:#ebe7e4;}.hrp-request-filter button{min-height:42px; border-radius:7px; color:#665f5b;}.hrp-request-filter button{font-size:.8rem;}.hrp-request-filter button.is-active{background:#fff; color:var(--hrp-blue-ink); box-shadow:0 1px 4px rgba(24,57,39,.06);}.hrp-shift-request-list{display:grid; gap:8px; overflow:visible; border:0; background:transparent; box-shadow:none;}.hrp-request-month{padding:9px 2px 3px; border:0; background:transparent; color:var(--hrp-muted);}.hrp-request-hint, .hrp-shift-request-meta{font-size:.78rem;}.hrp-request-title, .hrp-day-meta, .hrp-badge{font-size:.72rem;}.hrp-tab-badge, .hrp-request-filter-count, .hrp-profile-reminder-ring span{font-size:.7rem;}.hrp-shift-request-row{padding:12px 14px; border:1px solid var(--hrp-line); border-radius:8px; background:#fff; box-shadow:none;}.hrp-shift-request-row:first-child{border-top:1px solid var(--hrp-line);}.hrp-shift-request-row.is-open{border-left:4px solid var(--hrp-accent); background:#fff;}.hrp-shift-request-status{border-radius:999px;}.hrp-message-row, .hrp-request-flow-note, .hrp-empty{border-color:var(--hrp-line); border-radius:8px; box-shadow:none; font-size:.82rem;}.hrp-attendance-month small, .hrp-attendance-summary span, .hrp-attendance-date small, .hrp-attendance-status, .hrp-attendance-times small{font-size:.72rem;}.hrp-attendance-summary > div, .hrp-attendance-summary .is-green, .hrp-attendance-summary .is-yellow, .hrp-attendance-summary .is-red, .hrp-summary-item, .hrp-table-head, .hrp-profile-section[open] > summary, .hrp-slot-banner, .hrp-day-weekend, .hrp-day-selected{background:#fff;}.hrp-table-head{background:#e7eee2; color:var(--hrp-ink);}.hrp-slot-banner{border-color:var(--hrp-line); border-left:4px solid var(--hrp-accent);}.hrp-day-weekend{border-color:var(--hrp-line);}.hrp-day-selected{border-color:var(--hrp-accent); box-shadow:inset 3px 0 0 var(--hrp-accent);}@media (max-width:760px){.hrp-page{padding:8px 8px calc(82px + env(safe-area-inset-bottom));}.hrp-header{min-height:60px; margin-bottom:11px; padding:8px 10px;}.hrp-brand-mark{width:34px; height:34px; flex-basis:34px;}.hrp-brand-title{max-width:130px; font-size:.92rem;}.hrp-header-actions{gap:5px;}.hrp-language-control{width:132px;}.hrp-today{padding:15px;}.hrp-today-shift{font-size:1.35rem;}.hrp-performance{grid-template-columns:repeat(3,minmax(0,1fr));}.hrp-performance-item{min-height:100px; padding:9px 7px;}.hrp-performance-value{font-size:1.75rem;}.hrp-performance-meta{display:none;}.hrp-performance-label{font-size:.72rem;}.hrp-schedule{margin:0 0 14px;}.hrp-schedule-list .hrp-schedule-day, .hrp-schedule-list .hrp-schedule-day.has-action{width:100%; min-width:0; min-height:78px; padding:10px; grid-template-columns:40px minmax(0,1fr) auto 12px; gap:2px 9px;}.hrp-schedule-card-icon{width:38px; height:38px;}.hrp-schedule-location, .hrp-schedule-coworkers{font-size:.72rem;}.hrp-schedule-list .hrp-schedule-shift{font-size:.88rem;}.hrp-schedule-list .hrp-schedule-action{padding:6px 7px; font-size:.72rem;}.hrp-request-name{font-size:.72rem;}.hrp-tab{min-height:48px;}}@media (max-width:420px){.hrp-brand-lockup > div{display:block;}.hrp-brand-title{max-width:90px;}.hrp-language-control{width:104px;}.hrp-language-select{padding-right:23px; padding-left:29px; font-size:.72rem;}.hrp-refresh-button{--hrp-control-height:38px;}.hrp-language-control{height:38px;}.hrp-schedule-date-tab{min-height:48px;}.hrp-schedule-date-tab span{font-size:.68rem;}.hrp-schedule-list .hrp-schedule-action{grid-column:3;}.hrp-schedule-list .hrp-schedule-day{grid-template-columns:40px minmax(0,1fr) auto 12px;}}body .hrp-page .hrp-card{border-color:var(--hrp-line);}body .hrp-page .hrp-title{color:var(--hrp-ink);}body .hrp-page .hrp-muted, body .hrp-page .hrp-label{color:var(--hrp-muted);}body .hrp-page .hrp-input:focus{background:#fcfdf9;}body .hrp-page .hrp-button-primary{background:#245940; border-color:#245940; color:#fff;}body .hrp-page .hrp-button-primary:hover{background:#19452f; border-color:#19452f;}body .hrp-page .hrp-button-primary:focus-visible{outline:3px solid #83a98c; outline-offset:3px;}body .hrp-page .hrp-tab.is-active .hrp-tab-icon{background:#e5eee2;}body .hrp-page .hrp-profile-section[open] > summary{background:#f0f5eb;}body .hrp-page .hrp-login-card{border-top:5px solid #245940;}body .hrp-page .hrp-today, body .hrp-page .hrp-week-day, body .hrp-page .hrp-schedule-day{background:var(--hrp-shift-background); color:var(--hrp-shift-color); border-left-color:var(--hrp-shift-color);}body .hrp-page .hrp-schedule-day .hrp-schedule-date, body .hrp-page .hrp-schedule-day .hrp-schedule-shift, body .hrp-page .hrp-schedule-day .hrp-schedule-code, body .hrp-page .hrp-schedule-day .hrp-schedule-location, body .hrp-page .hrp-schedule-day .hrp-schedule-coworkers, body .hrp-page .hrp-week-day .hrp-week-weekday, body .hrp-page .hrp-week-day .hrp-week-date, body .hrp-page .hrp-week-day .hrp-week-shift{color:var(--hrp-shift-color);}body .hrp-page .hrp-today-status, body .hrp-page .hrp-today-punch, body .hrp-page .hrp-today-awaiting-punch{background:rgba(255,255,255,.18); color:inherit;}body .hrp-page .hrp-schedule-date-rail{display:flex; gap:8px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x proximity; scrollbar-width:thin; padding:5px 5px 10px; border:0; border-radius:0; background:transparent; -webkit-overflow-scrolling:touch;}body .hrp-page .hrp-schedule-date-tab{flex:0 0 64px; min-height:68px; padding:8px 4px; border:2px solid transparent; border-radius:12px; scroll-snap-align:center; background:var(--hrp-shift-background); color:var(--hrp-shift-color);}body .hrp-page .hrp-schedule-date-tab strong{color:inherit;}body .hrp-page .hrp-schedule-date-tab.is-today{box-shadow:inset 0 -4px 0 var(--hrp-shift-color);}body .hrp-page .hrp-schedule-date-tab.is-selected, body .hrp-page .hrp-schedule-date-tab:focus-visible{outline:2px solid #245940; outline-offset:1px;}body .hrp-page .hrp-schedule-list .hrp-schedule-day{grid-template-columns:42px minmax(0,1fr) auto; border-radius:14px; gap:5px 10px;}body .hrp-page .hrp-schedule-list .hrp-schedule-location{grid-row:3;}body .hrp-page .hrp-schedule-list .hrp-schedule-coworkers{grid-row:4;}body .hrp-page .hrp-schedule-list .hrp-schedule-action{grid-row:1 / span 2;}body .hrp-page .hrp-schedule-list .hrp-schedule-day:target{outline:2px solid #245940; outline-offset:2px;}body .hrp-page .hrp-home .hrp-today{padding:24px;border-radius:18px;margin-bottom:16px;}body .hrp-page .hrp-home .hrp-today-shift{font-size:1.8rem;margin:18px 0;}body .hrp-page .hrp-home-location, body .hrp-page .hrp-home-partners{display:flex;align-items:flex-start;gap:12px;margin:12px 0;line-height:1.5;overflow-wrap:anywhere;}body .hrp-page .hrp-home .hrp-today-link{display:flex;justify-content:space-between;border-top:1px solid currentColor;padding-top:16px;margin-top:20px;color:inherit;}body .hrp-page .hrp-home-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;}body .hrp-page .hrp-home-actions a{min-height:64px;display:flex;align-items:center;justify-content:center;gap:10px;white-space:normal;border-radius:14px;background:#e5eee2;}body .hrp-page .hrp-home-profile{display:grid;grid-template-columns:52px minmax(0,1fr) 16px;align-items:center;gap:14px;padding:18px;border:1px solid var(--hrp-line);background:#fff;border-radius:16px;color:var(--hrp-ink);text-decoration:none;margin:20px 0;}body .hrp-page .hrp-home-profile strong,body .hrp-page .hrp-home-profile small{display:block;}body .hrp-page .hrp-home-profile small{color:var(--hrp-muted);margin-top:5px;}body .hrp-page .hrp-home-profile .hrp-profile-reminder-ring{width:52px;height:52px;}body .hrp-page .hrp-home-profile .hrp-profile-reminder-ring span{color:#245940;}body .hrp-page .hrp-home-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 12px;}body .hrp-page .hrp-home-heading h3{font-size:1.1rem;margin:0;}body .hrp-page .hrp-home-heading a{color:#245940;font-size:.85rem;}body .hrp-page .hrp-home-upcoming{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}body .hrp-page .hrp-home-next{display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:16px;text-decoration:none;overflow-wrap:anywhere;}body .hrp-page .hrp-home-next strong{font-size:1.15rem;}body .hrp-page .hrp-home-next span{font-size:.85rem;}body .hrp-page .hrp-home-request{display:flex;align-items:center;gap:14px;padding:22px 18px;background:white;border:1px solid var(--hrp-line);border-radius:16px;color:var(--hrp-ink);text-decoration:none;}body .hrp-page .hrp-home-request strong{margin-left:auto;border-radius:12px;padding:5px 12px;background:#fff1d0;color:#765716;}body .hrp-page .hrp-home-dayoff{display:block;padding:18px 0;color:#245940;}body .hrp-page .hrp-home-more{margin-top:18px;border-top:1px solid var(--hrp-line);padding-top:16px;}body .hrp-page .hrp-home-more summary{cursor:pointer;min-height:44px;color:var(--hrp-muted);}body .hrp-page .hrp-export-sheet{margin:0 0 18px;}body .hrp-page .hrp-export-sheet summary{cursor:pointer;list-style:none;}body .hrp-page .hrp-export-sheet[open] summary::after{content:' ×';float:right;font-size:1.2rem;}body .hrp-page .hrp-export-form{padding:18px;background:white;border:1px solid var(--hrp-line);border-radius:14px;}body .hrp-page [data-medical-upload][hidden]{display:none!important;}@media(max-width:640px){body .hrp-page .hrp-export-sheet[open]{position:fixed;bottom:0;left:0;right:0;z-index:10010;max-height:90vh;overflow-y:auto;margin:0;padding:20px 16px calc(20px + env(safe-area-inset-bottom));background:#f3f5ee;border-radius:20px 20px 0 0;box-shadow:0 0 0 100vmax rgba(0,0,0,.3);}body .hrp-page .hrp-export-form .hrp-button{width:100%;}body .hrp-page .hrp-home .hrp-today{padding:20px;}}

/* /hr_simple/static/src/css/portal_upload.css */
.hr-file-upload{margin-top: 6px; padding: 12px; border: 1px solid #d6dce6; border-radius: 8px; background: #f8fafc;}.hr-file-upload__selection{display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 12px; align-items: center; margin-top: 12px; padding-top: 12px; border-top: 1px solid #e1e6ed;}.hr-file-upload__preview{width: 72px; height: 72px; display: flex; align-items: center; justify-content: center; overflow: hidden; border: 1px solid #d6dce6; border-radius: 6px; background: #ffffff; color: #576174; font-size: 13px; font-weight: 800; text-align: center;}.hr-file-upload__preview img{width: 100%; height: 100%; object-fit: contain;}.hr-file-upload__name, .hr-file-upload__size, .hr-file-upload__status{display: block; overflow-wrap: anywhere;}.hr-file-upload__name{color: #273044; font-size: 14px; font-weight: 800;}.hr-file-upload__size, .hr-file-upload__status{margin-top: 3px; color: #687184; font-size: 12px;}.hr-file-upload__change{min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 8px 10px; border: 1px solid #bcc7d6; border-radius: 6px; background: #ffffff; color: #315c91; font-size: 13px; font-weight: 800;}.hr-file-upload__change:focus-visible{outline: 3px solid rgba(47, 100, 179, .2); outline-offset: 2px;}.hr-file-upload__progress{width: 100%; height: 8px; display: block; grid-column: 2 / -1; accent-color: #4777b8;}.hr-file-upload__error{margin: 9px 0 0; color: #a33a3a; font-size: 13px; font-weight: 700;}.hr-file-upload [hidden]{display: none !important;}.hr-file-form-uploading{cursor: progress;}@media (max-width: 560px){.hr-file-upload{padding: 10px;}.hr-file-upload__selection{grid-template-columns: 64px minmax(0, 1fr); gap: 10px;}.hr-file-upload__preview{width: 64px; height: 64px;}.hr-file-upload__change, .hr-file-upload__progress{grid-column: 1 / -1; width: 100%;}}