/* Layout additions only. Brand, surfaces, type and controls come from the existing portal. */
.svh-personal-content [hidden]{display:none!important}
.svh-personal-content .hk-tabs.hk-main-tabs{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px;margin:22px auto}
.hk-tabs a[aria-current=page]{background:var(--portal-green);color:#fff;box-shadow:0 6px 16px #075f4620}
.hk-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.hk-subnav a{flex:1;text-align:center;min-height:46px;padding:12px 16px;border:1px solid var(--portal-silver);border-radius:14px;background:var(--portal-glass);font-weight:750;text-decoration:none}
.hk-subnav a[aria-current=page]{border-color:var(--portal-green);background:#e1eee8}
.hk-attention{padding:16px;border-radius:16px;background:#e1eee8}.hk-attention a{display:inline-block;margin-left:12px}
.hero:has(.hk-current) .hero-content>h1{font-size:clamp(27px,3.5vw,44px);margin-bottom:8px}
.hero:has(.hk-current) .hero-content>.lead{font-size:1rem;margin:0 0 12px}
.hero:has(.hk-current) .hero-content>.portal-actions{display:none}
.hk-current{position:relative;z-index:1;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:20px;align-items:center;padding:22px;margin-top:22px;border:1px solid #ffffff52;border-radius:24px;background:linear-gradient(120deg,#ffffff21,#ffffff0d);box-shadow:inset 0 1px 0 #ffffff25;color:#fff;text-align:left}
.hk-current-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:#ffffff20;border:1px solid #ffffff40}.hk-current-icon svg{width:36px;height:36px}
.hk-current .hk-current-label{font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;margin:0 0 7px;color:#d7f3e8}
.hk-current h2{font-size:clamp(22px,2.5vw,30px);line-height:1.15;margin:0 0 8px;color:#fff;overflow-wrap:anywhere}
.hk-current p{margin:4px 0;font-size:15px;line-height:1.5;color:#fff}.hk-current .hk-current-event{opacity:.85;font-size:14px}
.hk-current .portal-button{font-size:14px;padding:12px 18px;white-space:normal;min-height:46px}.hk-current a:focus-visible{outline:3px solid #fff;outline-offset:4px}
.hk-current.is-today{border-color:#ffffffa0;background:linear-gradient(120deg,#ffffff30,#ffffff12)}
.hk-current-copy{min-width:0}
@media(max-width:650px){.hk-current{grid-template-columns:44px minmax(0,1fr);padding:16px;gap:12px;border-radius:20px;margin-top:16px}.hk-current-icon{width:44px;height:44px;border-radius:14px}.hk-current-icon svg{width:28px;height:28px}.hk-current>.portal-button{grid-column:1/-1;width:100%}.hk-current p{font-size:13px}.hk-current .hk-current-label{font-size:10px}.hk-subnav{gap:6px}.hk-subnav a{font-size:12px;padding:12px 6px}.hero:has(.hk-current){padding-top:20px;padding-bottom:20px}.svh-personal-content .hk-main-tabs{margin:16px 0}}
.hk-free-duties{margin:24px 0}.hk-free-duties .registration-card{margin:0}.hk-free-duties .hk-free-intro{margin-bottom:18px}.hk-free-form .slot-content{min-width:0;overflow-wrap:anywhere}.hk-free-form .slot-heading{flex-wrap:wrap}.hk-free-form select{width:100%}
.svh-personal-content a{color:var(--portal-green);text-underline-offset:3px}
.svh-personal-content a:focus-visible{outline:3px solid #2563eb;outline-offset:4px}
.svh-personal-content .portal-button{gap:12px;background:linear-gradient(145deg,var(--portal-green-light),var(--portal-green));color:#fff;border:1px solid #ffffff60;box-shadow:inset 0 1px 0 #ffffff40,0 10px 24px #075f4625;min-height:50px;padding:12px 24px}
.svh-personal-content .portal-button:visited{color:#fff}.svh-personal-content .portal-button:hover{box-shadow:0 12px 26px #075f4638}
.svh-personal-content .hk-welcome{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,4vw,48px);align-items:center;padding:clamp(24px,4vw,42px);margin-top:24px}
.hk-welcome-main>.eyebrow{color:var(--portal-green);font-size:11px;letter-spacing:.14em}
.hk-welcome-main h2{font-size:clamp(25px,3vw,32px);margin:10px 0 12px;line-height:1.12}
.hk-welcome p{color:#62666c;line-height:1.6;margin:0 0 22px;max-width:44ch}
.hk-welcome-main .portal-button{min-width:190px}.hk-welcome .hk-recovery{display:block;width:fit-content;padding:14px 0 0;font-size:14px;color:#62666c}
.hk-welcome-new{border-left:1px solid #9ca5ad50;padding-left:clamp(24px,4vw,48px)}
.hk-welcome-new h3{margin:0 0 12px;font-size:20px;letter-spacing:-.02em}.hk-welcome-new p{font-size:15px}
.svh-personal-content .hk-button-secondary,.svh-personal-content .hk-button-secondary:visited{background:rgba(255,255,255,.65);color:var(--portal-green);border:1px solid #075f4630;box-shadow:inset 0 1px 0 #fff}
@media(max-width:640px){.svh-personal-content .hk-welcome{grid-template-columns:1fr;gap:24px}.hk-welcome-new{border-left:0;border-top:1px solid #9ca5ad50;padding:24px 0 0}.hk-welcome .portal-button{width:100%}.hk-welcome .hk-recovery{margin:auto}.hk-welcome p{max-width:none}}
.hk-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0 0 16px;position:relative;z-index:10}
.hero-toolbar .hk-bell{position:relative;display:flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border-radius:999px;color:#fff;border:1px solid #ffffff47;background:#0023192e;box-shadow:inset 0 1px 0 #ffffff24}
.hk-bell svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hk-notice-boxes{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 16px}.hk-notice-boxes a{display:flex;gap:10px;align-items:center;padding:12px 18px;border-radius:999px;background:#fff;color:#075943;text-decoration:none;font-weight:750}.hk-notice-boxes a[aria-current=page]{background:#075943;color:#fff}.hk-notice-boxes span{font-size:.85em;opacity:.8}.hk-notice-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.hk-notice-actions button{margin:0}
.hero-toolbar .hk-bell.has-unread{color:#ffdf83;border-color:#e8bc55;background:linear-gradient(145deg,#65501c,#293b20);box-shadow:0 0 0 3px #edc45c20,0 0 19px #f5cb6659,inset 0 1px 0 #fff0b766}
.hk-bell.has-unread svg{filter:drop-shadow(0 0 4px #ffd76a80)}
.hk-bell.has-unread .hk-unread{background:#ffdf83;color:#302307;border-color:#665021}
.hk-bell.is-ringing svg{transform-origin:50% 18%;animation:hk-bell-ring 1.2s ease-in-out 1}
.hk-bell:focus-visible{outline:3px solid #ffdf83;outline-offset:5px}
@keyframes hk-bell-ring{0%,100%{transform:rotate(0)}12%{transform:rotate(19deg)}25%{transform:rotate(-17deg)}38%{transform:rotate(14deg)}51%{transform:rotate(-11deg)}64%{transform:rotate(7deg)}77%{transform:rotate(-4deg)}90%{transform:rotate(2deg)}}
@media(prefers-reduced-motion:reduce){.hk-bell.is-ringing svg{animation:none;transform:none}}
.hk-unread{position:absolute;right:-5px;top:-6px;min-width:20px;height:20px;border-radius:999px;background:#fff;color:#075943;border:2px solid #075943;font-size:11px;line-height:16px;text-align:center;font-weight:850;padding:0 3px}
.hk-notice{background:rgba(255,255,255,.55);border:1px solid #cfdad5;border-radius:20px;padding:clamp(18px,3vw,28px);margin:18px 0;overflow-wrap:anywhere}
.hk-notice.is-unread{border-left:4px solid #087153;background:rgba(239,249,245,.8)}
.hk-notice-meta,.hk-notice-pages{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:#54625d;font-size:13px}
.hk-notice-meta span:last-child{padding:4px 10px;border-radius:999px;background:#e0eee8;color:#075943;font-weight:750}
.hk-notice h3{margin:14px 0 8px}.hk-notice p{line-height:1.65}.hk-notice form{margin-top:20px}.hk-notice-empty{padding:22px;background:#edf5f1;border-radius:18px}
.hk-push-settings{padding:22px;border:1px solid #cfdad5;border-radius:20px;background:rgba(239,249,245,.65);margin:24px 0 32px}.hk-push-settings h3{margin-top:0}.hk-push-settings [hidden]{display:none!important}
.hk-toolbar a{color:var(--portal-green);text-decoration:none;font-weight:750}
.hk-profile{position:relative}.hk-profile summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid rgba(255,255,255,.9);border-radius:999px;background:var(--portal-glass);font-weight:750}
.hk-profile summary::-webkit-details-marker{display:none}.hk-profile svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.hk-profile>div{position:absolute;right:0;top:calc(100% + 8px);width:250px;max-width:calc(100vw - 32px);padding:8px;background:#fff;border:1px solid var(--portal-silver);border-radius:18px;box-shadow:0 12px 30px #17221e22}
.hk-profile a{display:block;padding:12px;border-radius:10px}.hk-profile a:hover{background:var(--mint)}
.hero-toolbar .hk-profile summary{min-height:44px;color:#fff;border:1px solid rgba(255,255,255,.28);background:rgba(0,35,25,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 5px 16px rgba(0,28,20,.08);backdrop-filter:blur(10px);font-size:.76rem;letter-spacing:.02em}
.hero-toolbar .hk-profile summary:hover{background:rgba(255,255,255,.14)}
.hero-toolbar .hk-profile summary:focus-visible{outline:3px solid #fff;outline-offset:3px}
.hero-toolbar .hk-profile>div{color:var(--portal-green);max-width:calc(100vw - 80px)}
@media(max-width:650px){.hero-toolbar .hk-profile summary{width:44px;padding:10px;justify-content:center}.hero-toolbar .hk-profile summary span{display:none}}
.hk-toolbar a:focus-visible,.hk-profile summary:focus-visible,.hk-tabs a:focus-visible{outline:3px solid #2563eb;outline-offset:3px}
.svh-personal-content .hk-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:20px}
.hk-tabs a{display:flex;align-items:center;justify-content:center;min-height:48px;text-align:center;border-radius:999px;background:var(--portal-glass);color:var(--portal-green);text-decoration:none;font-weight:750;padding:10px}
.svh-personal-content section[id]{scroll-margin-top:24px}.svh-personal-content .duty{padding:18px 0;border-top:1px solid var(--portal-silver);overflow-wrap:anywhere}
.svh-personal-content .duty form{margin-top:14px}.svh-personal-content details summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:750}
.svh-personal-content .choices,.svh-personal-content .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.svh-personal-content .choices label{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px;border:1px solid var(--portal-silver);border-radius:16px;background:var(--portal-glass)}
.svh-personal-content input[type=checkbox]{width:20px;height:20px;flex-shrink:0;accent-color:var(--portal-green)}
.svh-personal-content fieldset{border:0;margin:20px 0;padding:0;min-width:0}.svh-personal-content legend{font-weight:800;margin-bottom:10px}.svh-personal-content legend span{font-weight:400}
.svh-personal-content .cup-tasks{border:1px solid var(--portal-silver);border-radius:18px;padding:16px}
.svh-personal-content .field{margin:14px 0}.svh-personal-content .field input:not([type]),.svh-personal-content input#verification{width:100%;min-height:52px;padding:13px 15px;border:1px solid var(--portal-silver);border-radius:16px;font:inherit;background:var(--portal-glass)}
.svh-personal-content select{max-width:100%;min-width:0}.svh-personal-content .muted{color:var(--muted);font-size:.9rem}
.svh-personal-content .acknowledge{display:flex;gap:12px;align-items:flex-start}.svh-personal-content .honeypot{position:absolute;left:-10000px;max-width:1px;overflow:hidden}
.svh-personal-content .hk-stats{display:flex;flex-wrap:wrap;gap:12px}.hk-stats a{padding:12px 16px;border-radius:16px;background:var(--portal-glass);color:var(--portal-green);text-decoration:none}
@media(max-width:560px){.svh-personal-content .choices,.svh-personal-content .fields{grid-template-columns:1fr}.svh-personal-content .hk-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.hk-profile summary span{display:none}.svh-personal-content button{width:100%}.hk-stats a{flex:1 1 100%}}
