:root{--hpsi-navy: #000060;--hpsi-blue: #2080d0;--hpsi-cyan: #20c6d9;--hpsi-charcoal: #1f2937;--hpsi-cool: #6b7280;--hpsi-light: #e5e7eb;--hpsi-white: #ffffff;--hpsi-navy-900: #00002e;--hpsi-navy-800: #000048;--hpsi-navy-600: #0a1a78;--hpsi-font: "Calibri", "Segoe UI", system-ui, Arial, sans-serif;--fs-title: 1.375rem;--fs-body: .9375rem;--fs-label: .75rem;--fs-caption: .8125rem;--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.5rem;--sp-6: 2rem;--sp-8: 3rem;--hpsi-radius: 10px;--hpsi-radius-sm: 6px;--hpsi-trace: linear-gradient(90deg, var(--hpsi-blue) 0%, var(--hpsi-cyan) 100%);--hpsi-shadow: 0 24px 60px -24px rgba(0, 0, 32, .55);--hpsi-focus: 0 0 0 3px rgba(32, 198, 217, .45)}*,*:before,*:after{box-sizing:border-box}.hpsi-app{font-family:var(--hpsi-font);color:var(--hpsi-charcoal);-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important}}.hpsi-login{font-family:var(--hpsi-font);min-height:100vh;display:grid;place-items:center;padding:var(--sp-5);color:var(--hpsi-charcoal);background:radial-gradient(120% 90% at 50% -10%,var(--hpsi-navy-600) 0%,transparent 55%),linear-gradient(160deg,var(--hpsi-navy-800) 0%,var(--hpsi-navy-900) 100%);position:relative;overflow:hidden}.hpsi-login:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(32,198,217,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(32,198,217,.06) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(circle at 50% 38%,#000 0%,transparent 72%);mask-image:radial-gradient(circle at 50% 38%,#000 0%,transparent 72%);pointer-events:none}.hpsi-card{position:relative;width:100%;max-width:408px;background:var(--hpsi-white);border-radius:var(--hpsi-radius);box-shadow:var(--hpsi-shadow);padding:var(--sp-8) var(--sp-6) var(--sp-6);overflow:hidden}.hpsi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--hpsi-trace);transform:scaleX(0);transform-origin:left center;animation:hpsi-trace-in .7s cubic-bezier(.22,1,.36,1) forwards}@keyframes hpsi-trace-in{to{transform:scaleX(1)}}.hpsi-brand{display:flex;flex-direction:column;align-items:center;gap:8px}.hpsi-product{font-size:var(--fs-label);font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--hpsi-blue)}.hpsi-step-title{margin:var(--sp-6) 0 var(--sp-1);font-size:1.05rem;font-weight:700;color:var(--hpsi-navy)}.hpsi-step-help{margin:0 0 var(--sp-5);font-size:var(--fs-caption);color:var(--hpsi-cool);line-height:1.45}.hpsi-field{margin-bottom:var(--sp-4)}.hpsi-field label{display:block;margin-bottom:6px;font-size:var(--fs-label);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--hpsi-cool)}.hpsi-field input{width:100%;font-family:var(--hpsi-font);font-size:var(--fs-body);color:var(--hpsi-charcoal);padding:.7rem .8rem;border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm);background:#fcfdff;transition:border-color .12s ease,box-shadow .12s ease}.hpsi-field input:hover{border-color:#c5cdd8}.hpsi-field input:focus{outline:none;border-color:var(--hpsi-blue);box-shadow:var(--hpsi-focus)}.hpsi-code input{font-feature-settings:"tnum" 1;letter-spacing:.5em;text-align:center;font-size:1.25rem;padding-left:.5em}.hpsi-btn{width:100%;margin-top:var(--sp-2);font-family:var(--hpsi-font);font-size:var(--fs-body);font-weight:700;color:var(--hpsi-white);background:var(--hpsi-navy);border:none;border-radius:var(--hpsi-radius-sm);padding:.75rem 1rem;cursor:pointer;transition:background .13s ease,transform 80ms ease}.hpsi-btn:hover{background:#0a1a78}.hpsi-btn:active{transform:translateY(1px)}.hpsi-btn:focus-visible{outline:none;box-shadow:var(--hpsi-focus)}.hpsi-btn:disabled{background:var(--hpsi-cool);cursor:progress}.hpsi-error{margin:0 0 var(--sp-4);padding:.6rem .75rem;font-size:var(--fs-caption);color:#7a1020;background:#fdecef;border-left:3px solid #c2304a;border-radius:var(--hpsi-radius-sm)}.hpsi-qr{display:block;width:168px;height:168px;margin:0 auto var(--sp-3);padding:10px;background:var(--hpsi-white);border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm)}.hpsi-secret{margin:0 0 var(--sp-5);text-align:center;font-size:var(--fs-caption);color:var(--hpsi-cool)}.hpsi-secret code{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;color:var(--hpsi-charcoal);letter-spacing:.08em}.hpsi-foot{margin-top:var(--sp-6);padding-top:var(--sp-4);border-top:1px solid var(--hpsi-light);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.hpsi-ticks{display:flex;align-items:flex-end;gap:3px;height:14px}.hpsi-ticks span{width:2px;background:var(--hpsi-cyan);border-radius:1px}.hpsi-ticks span:nth-child(1){height:6px}.hpsi-ticks span:nth-child(2){height:10px}.hpsi-ticks span:nth-child(3){height:14px}.hpsi-ticks span:nth-child(4){height:9px}.hpsi-foot .notice{font-size:.6875rem;color:var(--hpsi-cool);text-align:right;line-height:1.4}.hpsi-foot .notice strong{color:var(--hpsi-navy);font-weight:700;letter-spacing:.04em}@media (max-width: 460px){.hpsi-card{padding:var(--sp-6) var(--sp-5) var(--sp-5)}}.hpsi-link-btn{display:block;margin-top:var(--sp-3);padding:0;background:none;border:none;cursor:pointer;font-family:var(--hpsi-font);font-size:var(--fs-caption);color:var(--hpsi-blue);text-decoration:underline}.hpsi-link-btn:hover{color:var(--hpsi-navy)}.hpsi-link-btn:focus-visible{outline:none;box-shadow:var(--hpsi-focus)}.hpsi-shell{min-height:100vh;background:#f4f6fa;color:var(--hpsi-charcoal);font-family:var(--hpsi-font)}.hpsi-header{position:sticky;top:0;z-index:20;background:var(--hpsi-white);border-bottom:1px solid var(--hpsi-light)}.hpsi-header-inner{max-width:1120px;margin:0 auto;height:60px;padding:0 var(--sp-5);display:flex;align-items:center;gap:var(--sp-6)}.hpsi-header-trace{height:2px;background:var(--hpsi-trace)}.hpsi-header-brand{display:flex;align-items:center;gap:10px;flex:none}.hpsi-header-product{font-size:1rem;font-weight:700;color:var(--hpsi-navy);letter-spacing:.04em}.hpsi-nav{display:flex;align-items:center;gap:2px;flex:1}.hpsi-nav-item{font-family:var(--hpsi-font);font-size:.875rem;font-weight:600;color:var(--hpsi-cool);background:none;border:none;padding:8px 12px;border-radius:var(--hpsi-radius-sm);cursor:pointer;position:relative;transition:color .12s ease,background .12s ease}.hpsi-nav-item:hover{color:var(--hpsi-navy);background:#eef2f8}.hpsi-nav-item.is-active{color:var(--hpsi-navy)}.hpsi-nav-item.is-active:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:var(--hpsi-trace);border-radius:1px}.hpsi-nav-item:focus-visible{outline:none;box-shadow:var(--hpsi-focus)}.hpsi-header-user{display:flex;align-items:center;gap:12px;flex:none}.hpsi-user-email{font-size:.8125rem;color:var(--hpsi-cool);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hpsi-signout{font-family:var(--hpsi-font);font-size:.8125rem;font-weight:600;color:var(--hpsi-navy);background:var(--hpsi-white);border:1px solid var(--hpsi-light);padding:7px 14px;border-radius:var(--hpsi-radius-sm);cursor:pointer;transition:border-color .12s ease,background .12s ease}.hpsi-signout:hover{border-color:#c5cdd8;background:#f7f9fc}.hpsi-signout:focus-visible{outline:none;box-shadow:var(--hpsi-focus)}.hpsi-content{max-width:1120px;margin:0 auto;padding:var(--sp-6) var(--sp-5)}@media (max-width: 760px){.hpsi-header-inner{gap:var(--sp-4)}.hpsi-nav{overflow-x:auto}.hpsi-user-email{display:none}}.hpsi-dialog-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#00002e8c;display:flex;align-items:center;justify-content:center;padding:var(--sp-4)}.hpsi-dialog{background:#fff;border-radius:var(--hpsi-radius);box-shadow:var(--hpsi-shadow);padding:var(--sp-6);width:min(420px,100%)}.hpsi-dialog .hpsi-block-title{margin:0 0 var(--sp-4);color:var(--hpsi-navy)}.hpsi-dialog .hpsi-error{margin:0 0 var(--sp-4);padding:.6rem .75rem;font-size:var(--fs-caption);color:#7a1020;background:#fdecef;border-left:3px solid #c2304a;border-radius:var(--hpsi-radius-sm)}.hpsi-dialog .hpsi-field{margin-bottom:var(--sp-4)}.hpsi-dialog .hpsi-field label{display:block;margin-bottom:var(--sp-1);font-size:var(--fs-caption);font-weight:700;color:var(--hpsi-charcoal)}.hpsi-dialog .hpsi-field input{width:100%;box-sizing:border-box;padding:.6rem .7rem;font-family:var(--hpsi-font);font-size:var(--fs-body);border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm)}.hpsi-dialog .hpsi-field input:focus-visible{outline:none;box-shadow:var(--hpsi-focus)}.hpsi-dialog .hpsi-btn{font-family:var(--hpsi-font);font-size:var(--fs-body);font-weight:700;color:#fff;background:var(--hpsi-navy);border:none;border-radius:var(--hpsi-radius-sm);padding:.7rem 1.4rem;cursor:pointer}.hpsi-dialog .hpsi-btn:disabled{background:var(--hpsi-cool)}.hpsi-dialog-actions{display:flex;gap:var(--sp-4);align-items:center}.hpsi-dialog .hpsi-link-btn{padding:0;background:none;border:none;cursor:pointer;font-family:var(--hpsi-font);font-size:var(--fs-caption);color:var(--hpsi-blue);text-decoration:underline}.hpsi-dash{display:flex;flex-direction:column;gap:var(--sp-5)}.hpsi-run-panel{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-5);flex-wrap:wrap;background:radial-gradient(120% 160% at 90% -20%,#0a1a78 0%,transparent 60%),linear-gradient(160deg,#000048,#00002e);border-radius:var(--hpsi-radius);padding:var(--sp-5) var(--sp-6);position:relative;overflow:hidden}.hpsi-run-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--hpsi-trace)}.hpsi-eyebrow{font-size:var(--fs-label);font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--hpsi-cyan)}.hpsi-run-period{margin:6px 0 4px;font-size:1.5rem;font-weight:700;color:#fff}.hpsi-run-sub{margin:0;font-size:var(--fs-caption);color:#aab4d4}.hpsi-run-action{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.hpsi-run-btn{font-family:var(--hpsi-font);font-size:var(--fs-body);font-weight:700;color:var(--hpsi-navy);background:#fff;border:none;border-radius:var(--hpsi-radius-sm);padding:.7rem 1.4rem;cursor:pointer;transition:transform 80ms ease,background .12s ease}.hpsi-run-btn:hover{background:#e9f6fb}.hpsi-run-btn:active{transform:translateY(1px)}.hpsi-run-btn:disabled{background:#aab4d4;cursor:progress}.hpsi-run-btn:focus-visible{outline:none;box-shadow:var(--hpsi-focus)}.hpsi-run-msg{margin:0;font-size:var(--fs-caption);color:#cfe6f2;max-width:240px;text-align:right}.hpsi-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.hpsi-metric{background:var(--hpsi-white);border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius);padding:var(--sp-4);display:flex;flex-direction:column;gap:6px}.hpsi-metric .label{font-size:var(--fs-label);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--hpsi-cool)}.hpsi-metric .value{font-size:1.25rem;font-weight:700;color:var(--hpsi-navy)}.hpsi-block-title{margin:0 0 var(--sp-4);font-size:1.05rem;font-weight:700;color:var(--hpsi-navy)}.hpsi-table{width:100%;border-collapse:collapse;font-size:var(--fs-caption)}.hpsi-table thead th{background:var(--hpsi-navy);color:#fff;font-weight:700;text-align:left;padding:9px 12px}.hpsi-table thead th:first-child{border-top-left-radius:var(--hpsi-radius-sm)}.hpsi-table thead th:last-child{border-top-right-radius:var(--hpsi-radius-sm)}.hpsi-table tbody td{padding:9px 12px;color:var(--hpsi-charcoal);border-bottom:1px solid var(--hpsi-light)}.hpsi-table tbody tr:nth-child(2n) td{background:#f3f6fb}.hpsi-pill{display:inline-block;font-size:.75rem;font-weight:700;padding:2px 10px;border-radius:999px;color:var(--hpsi-cool);background:var(--hpsi-light)}.hpsi-pill.is-done{color:#0f6e56;background:#e1f5ee}@media (max-width: 760px){.hpsi-metrics{grid-template-columns:repeat(2,1fr)}.hpsi-run-action{align-items:flex-start}.hpsi-run-msg{text-align:left}}.hpsi-dash .hpsi-error{margin:0 0 var(--sp-4);padding:.6rem .75rem;font-size:var(--fs-caption);color:#7a1020;background:#fdecef;border-left:3px solid #c2304a;border-radius:var(--hpsi-radius-sm)}.hpsi-tc-chip{display:inline-block;padding:3px 10px;border-radius:999px;font-size:var(--fs-caption);font-weight:700;text-transform:capitalize;background:var(--hpsi-light);color:var(--hpsi-charcoal)}.hpsi-tc-chip.submitted{background:#fff4dd;color:#7a5200}.hpsi-tc-chip.approved{background:#e2f5e9;color:#1c6b3a}.hpsi-tc-chip.rejected{background:#fdecef;color:#7a1020}.hpsi-tc-actions{display:flex;gap:var(--sp-2);align-items:center}.hpsi-approve-btn{font-family:var(--hpsi-font);font-size:var(--fs-caption);font-weight:700;color:#fff;background:var(--hpsi-navy);border:none;border-radius:var(--hpsi-radius-sm);padding:.4rem .9rem;cursor:pointer}.hpsi-approve-btn:hover{background:#0a1a78}.hpsi-approve-btn:disabled{background:var(--hpsi-cool)}.hpsi-reject-btn{font-family:var(--hpsi-font);font-size:var(--fs-caption);font-weight:700;color:var(--hpsi-navy);background:#fff;border:1.5px solid var(--hpsi-navy);border-radius:var(--hpsi-radius-sm);padding:.4rem .9rem;cursor:pointer}.hpsi-reject-btn:disabled{border-color:var(--hpsi-cool);color:var(--hpsi-cool)}.hpsi-tc-done{font-size:var(--fs-caption);color:var(--hpsi-cool)}.hpsi-reject-row td{background:#fbfbfd}.hpsi-reject-row label{display:block;font-size:var(--fs-caption);font-weight:700;margin-bottom:var(--sp-1)}.hpsi-reject-row input{width:min(420px,100%);padding:.5rem .7rem;margin-right:var(--sp-3);border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm);font-family:var(--hpsi-font);font-size:var(--fs-body)}.hpsi-warn{margin:0 0 var(--sp-4);padding:.6rem .75rem;font-size:var(--fs-caption);color:#7a5200;background:#fff4dd;border-left:3px solid #d99a00;border-radius:var(--hpsi-radius-sm)}.hpsi-doc-toolbar{display:flex;gap:var(--sp-4);align-items:center;flex-wrap:wrap;margin-bottom:var(--sp-4)}.hpsi-doc-toolbar label{font-size:var(--fs-caption);font-weight:700;color:var(--hpsi-charcoal)}.hpsi-doc-toolbar select{padding:.5rem .7rem;border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm);font-family:var(--hpsi-font);font-size:var(--fs-body)}.hpsi-upload-btn{font-family:var(--hpsi-font);font-size:var(--fs-caption);font-weight:700;color:#fff;background:var(--hpsi-navy);border-radius:var(--hpsi-radius-sm);padding:.5rem 1rem;cursor:pointer;margin-left:auto}.hpsi-upload-btn:hover{background:#0a1a78}.hpsi-dialog-wide{width:min(640px,100%);max-height:90vh;overflow-y:auto}.hpsi-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--sp-4)}@media (max-width: 640px){.hpsi-form-grid{grid-template-columns:1fr}}.hpsi-note{margin-top:var(--sp-3);font-size:var(--fs-caption);color:var(--hpsi-cool)}.hpsi-history{margin-top:var(--sp-5);border-top:1px solid var(--hpsi-light);padding-top:var(--sp-3)}.hpsi-history ul{margin:0;padding-left:18px;font-size:var(--fs-caption);color:var(--hpsi-charcoal)}.hpsi-history li{margin:4px 0}.hpsi-review{border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm);padding:var(--sp-4);margin-bottom:var(--sp-4)}.hpsi-review-head,.hpsi-rating-row{display:flex;gap:var(--sp-3);align-items:center;margin-bottom:var(--sp-3)}.hpsi-rating-row .hpsi-rating-name{flex:0 0 200px;font-size:var(--fs-caption);font-weight:700}.hpsi-rating-row select{padding:.4rem;border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm)}.hpsi-rating-row input{flex:1;padding:.5rem .7rem;border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm);font-family:var(--hpsi-font)}.hpsi-share-toggle{display:flex;gap:var(--sp-2);align-items:center;font-size:var(--fs-caption);margin:var(--sp-3) 0 var(--sp-4)}.hpsi-dialog textarea{width:100%;box-sizing:border-box;padding:.6rem .7rem;border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm);font-family:var(--hpsi-font);font-size:var(--fs-body)}.hpsi-portal{display:flex;flex-direction:column;gap:var(--sp-5)}.hpsi-portal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap}.hpsi-portal-title{margin:0;font-size:1.25rem;font-weight:700;color:var(--hpsi-navy)}.hpsi-portal-sub{margin:2px 0 0;font-size:var(--fs-caption);color:var(--hpsi-cool)}.hpsi-status{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-label);font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 12px;border-radius:999px}.hpsi-status.draft{color:var(--hpsi-cool);background:var(--hpsi-light)}.hpsi-status.submitted{color:#854f0b;background:#faeeda}.hpsi-status.approved{color:#0f6e56;background:#e1f5ee}.hpsi-status.rejected{color:#791f1f;background:#fceaea}.hpsi-week-title{margin:0 0 8px;font-size:var(--fs-label);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--hpsi-blue)}.hpsi-week-title+.hpsi-week-title{margin-top:var(--sp-4)}.hpsi-time{width:100%;border-collapse:collapse;font-size:var(--fs-caption)}.hpsi-time td{padding:7px 10px;border-bottom:1px solid var(--hpsi-light)}.hpsi-time .day{color:var(--hpsi-charcoal)}.hpsi-time .day.weekend{color:var(--hpsi-cool)}.hpsi-time .hrs{text-align:right;width:120px}.hpsi-time input{width:84px;font-family:var(--hpsi-font);font-size:var(--fs-caption);text-align:right;padding:6px 8px;border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius-sm);background:#fcfdff;color:var(--hpsi-charcoal)}.hpsi-time input:focus{outline:none;border-color:var(--hpsi-blue);box-shadow:var(--hpsi-focus)}.hpsi-time input:disabled{background:#f3f4f6;color:var(--hpsi-cool)}.hpsi-subtotal td{font-weight:700;color:var(--hpsi-navy);border-bottom:none}.hpsi-submit-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--hpsi-light)}.hpsi-total{font-size:var(--fs-body);color:var(--hpsi-charcoal)}.hpsi-total strong{color:var(--hpsi-navy);font-size:1.1rem}.hpsi-submit-btn{font-family:var(--hpsi-font);font-size:var(--fs-body);font-weight:700;color:#fff;background:var(--hpsi-navy);border:none;border-radius:var(--hpsi-radius-sm);padding:.7rem 1.4rem;cursor:pointer}.hpsi-submit-btn:hover{background:#0a1a78}.hpsi-submit-btn:disabled{background:var(--hpsi-cool);cursor:not-allowed}.hpsi-submit-btn:focus-visible{outline:none;box-shadow:var(--hpsi-focus)}.hpsi-reject-note{margin-top:var(--sp-3);padding:.6rem .75rem;font-size:var(--fs-caption);color:#791f1f;background:#fceaea;border-left:3px solid #c2304a;border-radius:var(--hpsi-radius-sm)}.hpsi-list{width:100%;border-collapse:collapse;font-size:var(--fs-caption)}.hpsi-list th{background:var(--hpsi-navy);color:#fff;text-align:left;padding:9px 12px;font-weight:700}.hpsi-list td{padding:9px 12px;color:var(--hpsi-charcoal);border-bottom:1px solid var(--hpsi-light)}.hpsi-list tr:nth-child(2n) td{background:#f3f6fb}.hpsi-download{font-family:var(--hpsi-font);font-size:var(--fs-caption);font-weight:600;color:var(--hpsi-blue);background:none;border:none;cursor:pointer;padding:0}.hpsi-download:hover{color:var(--hpsi-navy);text-decoration:underline}.hpsi-empty{text-align:center;color:var(--hpsi-muted, #6b7785);padding:18px 0;font-style:italic}.hpsi-portal .hpsi-error{margin:0 0 var(--sp-4);padding:.6rem .75rem;font-size:var(--fs-caption);color:#7a1020;background:#fdecef;border-left:3px solid #c2304a;border-radius:var(--hpsi-radius-sm)}.hpsi-actions{display:flex;gap:var(--sp-3);align-items:center}.hpsi-save-btn{font-family:var(--hpsi-font);font-size:var(--fs-body);font-weight:700;color:var(--hpsi-navy);background:#fff;border:1.5px solid var(--hpsi-navy);border-radius:var(--hpsi-radius-sm);padding:.7rem 1.4rem;cursor:pointer}.hpsi-save-btn:hover{border-color:var(--hpsi-blue);color:var(--hpsi-blue)}.hpsi-save-btn:disabled{border-color:var(--hpsi-cool);color:var(--hpsi-cool);cursor:not-allowed}.hpsi-save-btn:focus-visible{outline:none;box-shadow:var(--hpsi-focus)}.hpsi-journal{display:flex;flex-direction:column;gap:var(--sp-5)}.hpsi-journal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap}.hpsi-journal-title{margin:0;font-size:1.25rem;font-weight:700;color:var(--hpsi-navy)}.hpsi-journal-sub{margin:2px 0 0;font-size:var(--fs-caption);color:var(--hpsi-cool)}.hpsi-balanced{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-label);font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 12px;border-radius:999px}.hpsi-balanced.ok{color:#0f6e56;background:#e1f5ee}.hpsi-balanced.off{color:#791f1f;background:#fceaea}.hpsi-card-block{background:var(--hpsi-white);border:1px solid var(--hpsi-light);border-radius:var(--hpsi-radius);padding:var(--sp-5)}.hpsi-jtable{width:100%;border-collapse:collapse;font-size:var(--fs-caption)}.hpsi-jtable th{background:var(--hpsi-navy);color:#fff;text-align:left;padding:9px 12px;font-weight:700}.hpsi-jtable th.num,.hpsi-jtable td.num{text-align:right;font-variant-numeric:tabular-nums}.hpsi-jtable td{padding:8px 12px;color:var(--hpsi-charcoal);border-bottom:1px solid var(--hpsi-light)}.hpsi-jtable tr:nth-child(2n) td{background:#f3f6fb}.hpsi-jtable tr.total td{font-weight:700;color:var(--hpsi-navy);background:#eef2f8;border-top:2px solid var(--hpsi-navy);border-bottom:none}.hpsi-journal-empty{color:var(--hpsi-muted, #6b7785);padding:22px 4px;font-style:italic;line-height:1.5}
