.hp{position:absolute;inset:0;display:flex;flex-direction:column;font-family:var(--mono);color:var(--text);background:radial-gradient(120% 70% at 50% 0%,rgba(182,240,106,.06),transparent 55%),var(--ink);overflow:hidden}.hp-head{flex:0 0 auto;display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px;padding:13px 20px 10px;border-bottom:1px solid var(--line)}.hp-title{font-size:14px;letter-spacing:.24em;color:var(--text);display:flex;align-items:center}.hp-dot{width:8px;height:8px;border-radius:50%;margin-right:9px;background:var(--accent);box-shadow:0 0 9px var(--accent)}.hp-sub{display:flex;gap:14px;flex-wrap:wrap;font-size:9.5px;letter-spacing:.1em;color:var(--text-faint);text-transform:uppercase}.hp-live{color:var(--accent)}.hp-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text-faint);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;text-align:center;padding:0 20px}.hp-spin{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--line-2);border-top-color:var(--accent);animation:hp-rot .9s linear infinite}.hp-spin-sm{width:22px;height:22px;border-width:1.4px}@keyframes hp-rot{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.hp-spin{animation-duration:2.4s}}.hp-err{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:30px 20px;text-align:center}.hp-err-msg{color:var(--signal);font-size:14px}.hp-err-detail{font-size:10px;color:var(--text-faint);max-width:520px}.hp-retry{margin-top:4px;padding:8px 18px;background:none;border:1px solid var(--accent);border-radius:3px;color:var(--accent);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .15s}.hp-retry:hover{background:#b6f06a1a}.hp-retry-sm{padding:5px 12px;font-size:9.5px}.hp-body{flex:1;display:flex;min-height:0}.hp-rail{flex:0 0 clamp(220px,24%,300px);display:flex;flex-direction:column;min-height:0}.hp-rail-l{border-right:1px solid var(--line)}.hp-rail-r{border-left:1px solid var(--line)}.hp-rail-h{flex:0 0 auto;display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:11px 14px 9px;border-bottom:1px solid var(--line);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.hp-rail-h-sub{color:var(--text-faint);font-size:8px}.hp-ticker{flex:1;overflow-y:auto}.hp-tick{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 14px;border-bottom:1px solid rgba(25,29,40,.6)}.hp-tick-cc{font-size:9.5px;letter-spacing:.06em;color:var(--accent);font-weight:500}.hp-tick-main{display:flex;flex-direction:column;gap:2px;min-width:0}.hp-tick-name{font-family:var(--sans);font-weight:300;font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.hp-tick-shared{flex:0 0 auto;font-style:normal;font-family:var(--mono);font-size:7.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:var(--accent);border-radius:2px;padding:1px 4px}.hp-tick-meta{font-size:9px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hp-tick-away{font-size:10px;color:var(--text-dim);text-align:right;white-space:nowrap}.hp-center{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}.hp-picker{flex:0 0 auto;padding:12px 18px 10px;border-bottom:1px solid var(--line)}.hp-picker-row{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-end}.hp-field{display:flex;flex-direction:column;gap:5px}.hp-field-lab{font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.hp-select{appearance:none;background:var(--ink-2);border:1px solid var(--line-2);border-radius:3px;color:var(--text);font-family:var(--mono);font-size:12px;padding:7px 10px;min-width:220px;cursor:pointer}.hp-select:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.hp-year{display:flex;align-items:center;gap:8px;background:var(--ink-2);border:1px solid var(--line-2);border-radius:3px;padding:3px 6px}.hp-year-btn{background:none;border:none;color:var(--text-dim);font-size:16px;line-height:1;width:22px;height:22px;cursor:pointer;border-radius:2px}.hp-year-btn:hover:not(:disabled){color:var(--accent);background:#b6f06a14}.hp-year-btn:disabled{opacity:.3;cursor:default}.hp-year-val{font-family:var(--serif);font-size:17px;color:var(--text);min-width:46px;text-align:center}.hp-calmeta{display:flex;align-items:baseline;gap:12px;margin-top:11px;flex-wrap:wrap}.hp-calmeta-name{font-family:var(--serif);font-size:19px;color:var(--text)}.hp-calmeta-stats{font-size:10px;letter-spacing:.06em;color:var(--text-dim);text-transform:uppercase}.hp-calmeta-reg{font-style:normal;color:var(--text-faint)}.hp-cal-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-faint);font-size:11px;letter-spacing:.08em;text-transform:uppercase;text-align:center;padding:20px}.hp-cal-err{color:var(--signal)}.hp-months{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);padding:1px}.hp-month{background:var(--ink);display:flex;flex-direction:column;min-height:120px;padding:9px 10px 10px}.hp-month-quiet{background:var(--ink-1)}.hp-month-h{display:flex;align-items:baseline;justify-content:space-between;gap:6px;margin-bottom:7px;border-bottom:1px solid var(--line);padding-bottom:5px}.hp-month-name{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.hp-month-n{font-size:9px;color:var(--ink);background:var(--accent);border-radius:2px;padding:1px 5px;font-weight:500}.hp-month-days{display:flex;flex-direction:column;gap:5px}.hp-month-none{font-size:11px;color:var(--text-faint);opacity:.5}.hp-day{display:grid;grid-template-columns:22px minmax(0,1fr);gap:7px;align-items:baseline}.hp-day-num{font-family:var(--serif);font-size:13px;color:var(--accent);text-align:right}.hp-day-regional .hp-day-num{color:var(--text-dim)}.hp-day-name{font-family:var(--sans);font-weight:300;font-size:11px;line-height:1.25;color:var(--text)}.hp-day-tag{grid-column:2;font-size:7.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.hp-cmp{flex:1;overflow-y:auto;padding:4px 0}.hp-cmp-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:30px 14px;color:var(--text-faint);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.hp-cmp-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:5px;padding:8px 14px;background:none;border:none;border-bottom:1px solid rgba(25,29,40,.6);cursor:pointer;text-align:left;color:inherit;font-family:var(--mono);transition:background .1s}.hp-cmp-row:hover{background:#ffffff06}.hp-cmp-row.on{background:#b6f06a14}.hp-cmp-name{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-family:var(--sans);font-weight:300;font-size:12px;color:var(--text-dim)}.hp-cmp-cc{font-style:normal;font-family:var(--mono);font-size:8px;letter-spacing:.08em;color:var(--text-faint)}.hp-cmp-track{display:flex;align-items:center;gap:8px}.hp-cmp-fill{display:block;height:6px;border-radius:3px;min-width:2px;transition:width .4s ease}.hp-cmp-num{flex:0 0 auto;font-size:11px;font-weight:500;color:var(--text)}.hp-cmp-track .hp-cmp-num{margin-left:auto}.hp-cmp-note{flex:0 0 auto;padding:9px 14px;border-top:1px solid var(--line);font-size:8.5px;line-height:1.4;letter-spacing:.04em;color:var(--text-faint)}.hp-emptyrow{padding:18px 14px;font-size:10px;color:var(--text-faint);text-align:center}.hp-ticker::-webkit-scrollbar,.hp-months::-webkit-scrollbar,.hp-cmp::-webkit-scrollbar{width:8px}.hp-ticker::-webkit-scrollbar-thumb,.hp-months::-webkit-scrollbar-thumb,.hp-cmp::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:4px}@media(max-width:1080px){.hp-months{grid-template-columns:repeat(3,1fr)}}@media(max-width:820px){.hp-body{flex-direction:column;overflow-y:auto}.hp-rail{flex:0 0 auto;border:none;border-bottom:1px solid var(--line)}.hp-rail-l{order:2}.hp-center{order:1}.hp-rail-r{order:3}.hp-ticker,.hp-cmp,.hp-months{overflow-y:visible}.hp-months{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.hp-months{grid-template-columns:1fr}.hp-select{min-width:0;width:100%}}
