.hth-btn{font-family:var(--font-sans);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;opacity:1;width:auto;transition:background .2s var(--ease-out), transform .12s var(--ease-out), box-shadow .2s var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;font-weight:600;line-height:1.2;display:inline-flex}.hth-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.hth-btn:not(:disabled):active{transform:translateY(1px)}.hth-btn--full{width:100%}.hth-btn:disabled{cursor:not-allowed;opacity:.5}.hth-btn--sm{gap:7px;padding:9px 18px;font-size:14px}.hth-btn--md{gap:9px;padding:12px 24px;font-size:16px}.hth-btn--lg{gap:10px;padding:15px 30px;font-size:17px}.hth-btn--primary{background:var(--persimmon);color:var(--on-persimmon);box-shadow:var(--shadow-xs);border-color:#0000}.hth-btn--primary:not(:disabled):hover{background:var(--persimmon-deep)}.hth-btn--primary:focus-visible{box-shadow:var(--shadow-xs), var(--focus-ring)}.hth-btn--secondary{background:var(--paper-0);color:var(--ink);border-color:var(--line-strong)}.hth-btn--secondary:not(:disabled):hover{background:var(--paper-50)}.hth-btn--tonal{background:var(--persimmon-tint);color:var(--persimmon-text);border-color:#0000}.hth-btn--tonal:not(:disabled):hover{background:var(--persimmon-tint-2)}.hth-btn--ghost{color:var(--ink-2);background:0 0;border-color:#0000}.hth-btn--ghost:not(:disabled):hover{background:var(--paper-200)}.hth-kpi{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--r-lg);min-width:0;box-shadow:var(--shadow-card);padding:var(--card-pad);flex-direction:column;gap:6px;display:flex;position:relative}.hth-kpi__head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.hth-kpi__label{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--ink-2)}.hth-kpi__icon{border-radius:var(--r-md);background:var(--hth-kpi-tint);width:38px;height:38px;color:var(--hth-kpi-deep);flex-shrink:0;place-items:center;margin-top:-2px;font-size:20px;display:grid;box-shadow:inset 0 1px #ffffff59}.hth-kpi__value-row{align-items:baseline;gap:6px;margin-top:6px;display:flex}.hth-kpi__value{font-family:var(--font-display);font-size:46px;font-weight:var(--fw-semibold);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1}.hth-kpi__unit{font-size:var(--text-body);font-weight:var(--fw-medium);color:var(--ink-2)}.hth-kpi__pill{border-radius:var(--r-pill);background:var(--hth-kpi-tint);color:var(--hth-kpi-deep);font-size:var(--text-sm);font-weight:var(--fw-semibold);align-self:flex-start;margin-top:10px;padding:5px 12px}.hth-kpi__caption{color:var(--ink-2);font-size:var(--text-sm);margin:6px 0 0}.hth-kpi__track{border-radius:var(--r-pill);background:var(--paper-200);width:100%;height:9px;margin-top:14px;overflow:hidden;box-shadow:inset 0 1px 2px #2e221414}.hth-kpi__fill{border-radius:var(--r-pill);background:var(--hth-kpi-solid);width:100%;height:100%;transition:clip-path var(--dur-slow) var(--ease-out)}@media (prefers-reduced-motion:reduce){.hth-kpi__fill{transition:none}}@media (prefers-reduced-motion:no-preference){@keyframes skelShimmer{0%{background-position:-380px 0}to{background-position:380px 0}}.skel__bar{animation:1.3s linear infinite skelShimmer}}.skel__bar{background:linear-gradient(90deg, var(--paper-200) 25%, var(--paper-100) 37%, var(--paper-200) 63%);background-size:760px 100%;border-radius:6px}.skel--block .skel__bar{height:64px}.skel--text{flex-direction:column;gap:8px;display:flex}.skel--text .skel__bar{height:12px}.skel--text .skel__bar:last-child{width:62%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hth-stat-card{background:var(--surface-soft-raised);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card-soft);flex-direction:column;gap:6px;padding:16px 18px;display:flex}.hth-stat-card__label{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--ink-2)}.hth-stat-card__value{font-family:var(--font-display);font-size:26px;font-weight:var(--fw-semibold);letter-spacing:var(--tracking-snug);color:var(--ink);font-variant-numeric:tabular-nums}.hth-stat-card__value--persimmon{color:var(--persimmon-text)}.hth-stat-card__value--green{color:var(--green-ink)}.hth-stat-card__value--indigo{color:var(--indigo-text)}.hth-stat-card__value--teal{color:var(--green-text)}.hth-stat-card__value--brick{color:var(--brick-text)}.hth-stat-card__value--ink{color:var(--ink)}.hth-badge{border-radius:var(--r-pill);font-family:var(--font-sans);font-size:14px;line-height:1.2;font-weight:var(--fw-semibold);white-space:nowrap;border:1px solid;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.hth-badge--neutral{background:var(--paper-200);color:var(--ink-2)}.hth-badge--persimmon{background:var(--persimmon-tint);color:var(--persimmon-text)}.hth-badge--green{background:var(--green-tint);color:var(--green-ink)}.hth-badge--indigo{background:var(--indigo-tint);color:var(--indigo)}.hth-badge--teal{background:var(--teal-tint);color:var(--teal-text)}.hth-badge--brick{background:var(--brick-tint);color:var(--brick-text)}.hth-select-wrap{position:relative}.hth-select-wrap--full{width:100%;display:block}.hth-select-wrap--auto{width:auto;display:inline-block}.hth-select{appearance:none;background:var(--paper-0);width:100%;color:var(--ink);border:1.5px solid var(--line-strong);border-radius:var(--r-md);font-size:16px;font-family:var(--font-sans);font-weight:var(--fw-medium);cursor:pointer;box-shadow:none;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);outline:none;padding:12px 42px 12px 16px}.hth-select:focus{border-color:var(--persimmon);box-shadow:var(--focus-ring)}.hth-select-caret{pointer-events:none;color:var(--ink-2);font-size:16px;display:inline-flex;position:absolute;top:50%;right:15px;transform:translateY(-50%)}.hth-slider{appearance:none;border-radius:var(--r-pill);cursor:pointer;outline:none;width:100%;height:8px}.hth-slider::-webkit-slider-thumb{appearance:none;border-radius:var(--r-pill);border:3px solid var(--persimmon);width:22px;height:22px;box-shadow:var(--shadow-sm);cursor:pointer;background:#fff}.hth-slider::-moz-range-thumb{border-radius:var(--r-pill);border:3px solid var(--persimmon);width:22px;height:22px;box-shadow:var(--shadow-sm);cursor:pointer;background:#fff}.hth-slider:focus-visible{box-shadow:var(--focus-ring)}.hth-slider-row{justify-content:space-between;align-items:baseline;display:flex}.hth-slider-label{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--ink-2)}.hth-slider-value{font-family:var(--font-display);font-size:19px;font-weight:var(--fw-semibold);color:var(--persimmon-text)}.hth-textfield{gap:var(--space-2);flex-direction:column;display:flex}.hth-textfield__label{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--ink-2)}.hth-textfield__field{align-items:center;display:flex;position:relative}.hth-textfield__prefix{left:var(--space-4);color:var(--ink-2);font-family:var(--font-display);font-size:var(--text-lg);pointer-events:none;position:absolute}.hth-textfield__input{width:100%;padding:13px var(--space-4);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--fw-medium);color:var(--ink);background:var(--paper-0);border:1.5px solid var(--line-strong);border-radius:var(--r-md);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);outline:none}.hth-textfield__input--has-prefix{padding-left:30px}.hth-textfield__suffix{right:var(--space-4);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--text-sm);white-space:nowrap;pointer-events:none;position:absolute}.hth-textfield__input--has-suffix{padding-right:52px}.hth-textfield__input::placeholder{color:var(--ink-3)}.hth-textfield__input:focus{border-color:var(--persimmon);box-shadow:var(--focus-ring)}.hth-textfield--error .hth-textfield__input,.hth-textfield--error .hth-textfield__input:focus{border-color:var(--negative);box-shadow:none}.hth-textfield__input:disabled{background:var(--paper-100);opacity:.6;cursor:not-allowed}.hth-textfield__hint{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-3)}.hth-textfield__error{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--negative-text);align-items:center;gap:5px;display:inline-flex}.hth-card{border-radius:var(--r-lg);position:relative}.hth-card--paper{background:var(--surface-raised);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-card);overflow:visible}.hth-card--forest{background:var(--forest);color:var(--on-forest);border:1px solid var(--forest-line);box-shadow:inset 0 1px 0 #ffffff1f, var(--shadow-forest);margin-bottom:var(--space-6);overflow:visible}.hth-card--arch{overflow:hidden}.hth-card__arch{border-radius:var(--arch-radius);pointer-events:none;border:1.5px solid #ffffff1f;border-bottom:none;width:360px;height:360px;position:absolute;bottom:-150px;right:-90px}.hth-card__content{z-index:1;position:relative}.hth-toast{background:var(--paper-0);border:1px solid var(--line);border-radius:var(--r-md);width:360px;max-width:90vw;box-shadow:var(--shadow-lg);align-items:flex-start;gap:12px;padding:14px 16px 14px 18px;display:flex;position:relative;overflow:hidden}.hth-toast__bar{width:4px;position:absolute;top:0;bottom:0;left:0}.hth-toast__icon{flex-shrink:0;margin-top:1px;font-size:20px;display:inline-flex}.hth-toast__body{flex:1;min-width:0}.hth-toast__title{font-size:15px;font-weight:var(--fw-semibold);color:var(--ink)}.hth-toast__message{font-size:var(--text-sm);color:var(--ink-2);line-height:var(--leading-normal);margin-top:2px}.hth-toast__close{color:var(--ink-3);cursor:pointer;border-radius:var(--r-xs);transition:color var(--dur-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;padding:2px;font-size:18px;line-height:1;display:inline-flex}.hth-toast__close:hover{color:var(--ink)}.hth-toast__close:focus-visible{box-shadow:var(--focus-ring);outline:none}.hth-modal-scrim{z-index:1000;padding:var(--space-6);animation:hth-modal-fade var(--dur-fast) var(--ease-out);background:#140e088c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.hth-modal-panel{background:var(--paper-0);border:1px solid var(--line);border-radius:var(--r-xl);max-width:100%;max-height:86vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.hth-modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--line);display:flex}.hth-modal-title{font-size:var(--text-h3);font-weight:var(--fw-semibold);margin:0}.hth-modal-close{color:var(--ink-2);cursor:pointer;padding:var(--space-1);border-radius:var(--r-sm);transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;font-size:20px;line-height:1;display:inline-flex}.hth-modal-close:hover{color:var(--ink);background:var(--paper-100)}.hth-modal-close:focus-visible{box-shadow:var(--focus-ring);outline:none}.hth-modal-body{padding:var(--space-6);color:var(--ink);overflow-y:auto}.hth-modal-footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--line);display:flex}@keyframes hth-modal-fade{0%{opacity:0}to{opacity:1}}.hth-tooltip{display:inline-flex;position:relative}.hth-tooltip-bubble{background:var(--ink);color:var(--paper-0);font-size:14px;font-weight:var(--fw-medium);white-space:nowrap;border-radius:var(--r-sm);box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out);z-index:300;padding:7px 11px;line-height:1.4;position:absolute}.hth-tooltip-bubble.hth-tooltip-open{opacity:1}.hth-tooltip-bubble.hth-tooltip-portal{pointer-events:auto;position:fixed;bottom:auto;right:auto}.hth-tooltip-portal.hth-tooltip-top{transform:translate(-50%,-100%)}.hth-tooltip-portal.hth-tooltip-bottom{transform:translate(-50%)}.hth-tooltip-portal.hth-tooltip-left{transform:translate(-100%,-50%)}.hth-tooltip-portal.hth-tooltip-right{transform:translateY(-50%)}.hth-tooltip-top{bottom:130%;left:50%;transform:translate(-50%)}.hth-tooltip-bottom{top:130%;left:50%;transform:translate(-50%)}.hth-tooltip-left{top:50%;right:120%;transform:translateY(-50%)}.hth-tooltip-right{top:50%;left:120%;transform:translateY(-50%)}.hth-helptip{cursor:help;vertical-align:middle;outline:none;margin-left:6px;display:inline-flex;position:relative}.hth-helptip--pinned{cursor:default}.hth-helptip__mark{border-radius:var(--r-pill);background:var(--paper-200);width:18px;height:18px;color:var(--ink-2);font-size:var(--text-xs);font-weight:var(--fw-bold);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.hth-helptip:focus-visible .hth-helptip__mark{box-shadow:var(--focus-ring)}.hth-helptip--open .hth-helptip__mark,.hth-helptip--pinned .hth-helptip__mark{background:var(--persimmon);color:var(--on-persimmon)}.hth-helptip__bubble{background:var(--paper-0);width:270px;max-width:70vw;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-md);font-size:var(--text-sm);font-weight:var(--fw-regular);line-height:var(--leading-normal);box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);z-index:200;padding:12px 14px;position:absolute;bottom:150%;left:50%;transform:translate(-50%)translateY(4px)}.hth-helptip--open .hth-helptip__bubble{opacity:1;transform:translate(-50%)translateY(0)}.hth-helptip__bubble--portal{pointer-events:auto;width:270px;max-width:min(70vw,100vw - 16px);transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);position:fixed;bottom:auto;left:auto}.hth-helptip__bubble--portal.hth-helptip__bubble--top{opacity:0;transform:translate(-50%,calc(6px - 100%))}.hth-helptip__bubble--portal.hth-helptip__bubble--bottom{opacity:0;transform:translate(-50%,-6px)}.hth-helptip__bubble--portal.hth-helptip__bubble--left{opacity:0;transform:translate(calc(-100% - 6px),-50%)}.hth-helptip__bubble--portal.hth-helptip__bubble--right{opacity:0;transform:translate(6px,-50%)}.hth-helptip__bubble--portal.hth-helptip__bubble--open.hth-helptip__bubble--top{opacity:1;transform:translate(-50%,-100%)}.hth-helptip__bubble--portal.hth-helptip__bubble--open.hth-helptip__bubble--bottom{opacity:1;transform:translate(-50%)}.hth-helptip__bubble--portal.hth-helptip__bubble--open.hth-helptip__bubble--left{opacity:1;transform:translate(-100%,-50%)}.hth-helptip__bubble--portal.hth-helptip__bubble--open.hth-helptip__bubble--right{opacity:1;transform:translateY(-50%)}
