:root{--jsg-color-border-base:var(--jsg-color-gray-200);--jsg-color-border-focus:var(--jsg-color-primary-500);--jsg-color-border-strong:var(--jsg-color-gray-300);--jsg-color-danger-200:#fecaca;--jsg-color-danger-50:#fef2f2;--jsg-color-danger-500:#ef4444;--jsg-color-danger-600:#dc2626;--jsg-color-danger-700:#b91c1c;--jsg-color-forest-200:#a5d66a;--jsg-color-forest-300:#7cb342;--jsg-color-forest-500:#4a7c23;--jsg-color-forest-700:#2d5016;--jsg-color-gray-100:#f3f4f6;--jsg-color-gray-200:#e5e7eb;--jsg-color-gray-300:#d1d5db;--jsg-color-gray-400:#9ca3af;--jsg-color-gray-50:#f9fafb;--jsg-color-gray-500:#6b7280;--jsg-color-gray-600:#4b5563;--jsg-color-gray-700:#374151;--jsg-color-gray-800:#1f2937;--jsg-color-gray-900:#111827;--jsg-color-primary-100:#dbeafe;--jsg-color-primary-300:#93c5fd;--jsg-color-primary-50:#eff6ff;--jsg-color-primary-500:#3b82f6;--jsg-color-primary-600:#2563eb;--jsg-color-primary-700:#1d4ed8;--jsg-color-success-200:#bbf7d0;--jsg-color-success-50:#f0fdf4;--jsg-color-success-600:#16a34a;--jsg-color-success-700:#15803d;--jsg-color-success-800:#166534;--jsg-color-surface-base:#ffffff;--jsg-color-surface-muted:var(--jsg-color-gray-50);--jsg-color-surface-sunken:var(--jsg-color-gray-100);--jsg-color-text-base:var(--jsg-color-gray-900);--jsg-color-text-inverse:#ffffff;--jsg-color-text-link:var(--jsg-color-primary-600);--jsg-color-text-link-hover:var(--jsg-color-primary-700);--jsg-color-text-muted:var(--jsg-color-gray-500);--jsg-color-warning-200:#fde68a;--jsg-color-warning-50:#fffbeb;--jsg-color-warning-800:#92400e;--jsg-container-lg:80rem;--jsg-container-md:64rem;--jsg-container-sm:48rem;--jsg-font-family-body:"Inter",ui-sans-serif,system-ui,-apple-system,sans-serif;--jsg-font-family-heading:"Inter",ui-sans-serif,system-ui,-apple-system,sans-serif;--jsg-font-family-mono:ui-monospace,"SFMono-Regular","Menlo",monospace;--jsg-font-size-2xl:1.5rem;--jsg-font-size-3xl:1.875rem;--jsg-font-size-4xl:2.25rem;--jsg-font-size-base:1rem;--jsg-font-size-lg:1.125rem;--jsg-font-size-sm:0.875rem;--jsg-font-size-xl:1.25rem;--jsg-font-size-xs:0.75rem;--jsg-font-weight-bold:700;--jsg-font-weight-extrabold:800;--jsg-font-weight-medium:500;--jsg-font-weight-normal:400;--jsg-font-weight-semibold:600;--jsg-leading-normal:1.5;--jsg-leading-relaxed:1.625;--jsg-leading-snug:1.375;--jsg-leading-tight:1.25;--jsg-radius-full:9999px;--jsg-radius-lg:0.75rem;--jsg-radius-md:0.5rem;--jsg-radius-sm:0.375rem;--jsg-radius-xl:1rem;--jsg-screen-lg:1024px;--jsg-screen-md:768px;--jsg-screen-sm:640px;--jsg-shadow-lg:0 12px 28px rgba(17,24,39,0.14);--jsg-shadow-md:0 4px 12px rgba(17,24,39,0.1);--jsg-shadow-sm:0 1px 2px rgba(17,24,39,0.06);--jsg-space-1:0.25rem;--jsg-space-10:2.5rem;--jsg-space-12:3rem;--jsg-space-16:4rem;--jsg-space-2:0.5rem;--jsg-space-3:0.75rem;--jsg-space-4:1rem;--jsg-space-5:1.25rem;--jsg-space-6:1.5rem;--jsg-space-8:2rem}.jsg-accordion{display:grid;gap:var(--jsg-space-3)}.jsg-accordion__item{border:1px solid var(--jsg-color-border-base);border-radius:var(--jsg-radius-lg);background:var(--jsg-color-surface-base)}.jsg-accordion__summary{padding:var(--jsg-space-3) var(--jsg-space-4);font-weight:var(--jsg-font-weight-semibold);cursor:pointer}.jsg-accordion__summary:hover{background:var(--jsg-color-surface-muted)}.jsg-accordion__panel{padding:0 var(--jsg-space-4) var(--jsg-space-4);color:var(--jsg-color-text-muted)}.jsg-alert{padding:var(--jsg-space-4);border:1px solid var(--jsg-color-border-base);border-radius:var(--jsg-radius-lg);font-size:var(--jsg-font-size-sm)}.jsg-alert__title{margin:0 0 var(--jsg-space-1);font-weight:var(--jsg-font-weight-semibold)}.jsg-alert--success{border-color:var(--jsg-color-success-200);background:var(--jsg-color-success-50);color:var(--jsg-color-success-800)}.jsg-alert--error{border-color:var(--jsg-color-danger-200);background:var(--jsg-color-danger-50);color:var(--jsg-color-danger-700)}.jsg-alert--info{border-color:var(--jsg-color-primary-300);background:var(--jsg-color-primary-50);color:var(--jsg-color-primary-700)}.jsg-alert--warning{border-color:var(--jsg-color-warning-200);background:var(--jsg-color-warning-50);color:var(--jsg-color-warning-800)}.jsg-badge{display:inline-flex;align-items:center;padding:var(--jsg-space-1) var(--jsg-space-3);border-radius:var(--jsg-radius-full);background:var(--jsg-color-surface-sunken);color:var(--jsg-color-gray-700);font-size:var(--jsg-font-size-xs);font-weight:var(--jsg-font-weight-medium);white-space:nowrap}.jsg-badge--info{background:var(--jsg-color-primary-100);color:var(--jsg-color-primary-700)}.jsg-badge--success{background:var(--jsg-color-success-200);color:var(--jsg-color-success-800)}.jsg-badge--warning{background:var(--jsg-color-warning-200);color:var(--jsg-color-warning-800)}.jsg-badge--danger{background:var(--jsg-color-danger-100);color:var(--jsg-color-danger-700)}.jsg-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--jsg-space-2);min-block-size:2.75rem;padding:var(--jsg-space-2) var(--jsg-space-4);border:1px solid transparent;border-radius:var(--jsg-radius-md);font-family:var(--jsg-font-family-body);font-size:var(--jsg-font-size-sm);font-weight:var(--jsg-font-weight-medium);line-height:1;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.jsg-button:disabled,.jsg-button[aria-disabled=true]{opacity:.5;pointer-events:none}.jsg-button--primary{background:var(--jsg-color-primary-600);color:var(--jsg-color-text-inverse)}.jsg-button--primary:hover{background:var(--jsg-color-primary-700)}.jsg-button--secondary{background:var(--jsg-color-surface-sunken);color:var(--jsg-color-text-base)}.jsg-button--secondary:hover{background:var(--jsg-color-gray-200)}.jsg-button--outline{background:var(--jsg-color-surface-base);border-color:var(--jsg-color-border-strong);color:var(--jsg-color-text-base)}.jsg-button--outline:hover{background:var(--jsg-color-surface-muted)}.jsg-card{display:flex;flex-direction:column;padding:var(--jsg-space-6);border:1px solid var(--jsg-color-border-base);border-radius:var(--jsg-radius-lg);background:var(--jsg-color-surface-base);box-shadow:var(--jsg-shadow-sm);color:inherit;text-decoration:none}.jsg-card--interactive{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}@media (hover:hover){.jsg-card--interactive:hover{border-color:var(--jsg-color-primary-300);box-shadow:var(--jsg-shadow-md);transform:translateY(-2px)}}.jsg-card--interactive:active{transform:scale(.99)}@media (prefers-reduced-motion:reduce){.jsg-card--interactive{transition:none}.jsg-card--interactive:active,.jsg-card--interactive:hover{transform:none}}.jsg-card__icon{display:inline-flex;margin-block-end:var(--jsg-space-3);color:var(--jsg-color-primary-600)}.jsg-card__title{margin:0 0 var(--jsg-space-2);font-size:var(--jsg-font-size-lg);font-weight:var(--jsg-font-weight-semibold)}.jsg-card__body{flex:1 1 auto;margin:0;color:var(--jsg-color-text-muted)}.jsg-card__body,.jsg-card__cta{font-size:var(--jsg-font-size-sm)}.jsg-card__cta{display:inline-flex;align-items:center;gap:var(--jsg-space-1);margin-block-start:var(--jsg-space-3);color:var(--jsg-color-text-link);font-weight:var(--jsg-font-weight-semibold)}.jsg-card-grid{display:grid;grid-template-columns:1fr;gap:var(--jsg-space-5)}@media (width >= 768px){.jsg-card-grid{grid-template-columns:repeat(3,1fr)}}.jsg-checkbox{display:flex;flex-direction:column;gap:var(--jsg-space-1)}.jsg-checkbox__row{display:flex;align-items:flex-start;gap:var(--jsg-space-3)}.jsg-checkbox__input{flex-shrink:0;inline-size:1.15rem;block-size:1.15rem;margin-block-start:.1rem;accent-color:var(--jsg-color-primary-600)}.jsg-checkbox__label{font-size:var(--jsg-font-size-sm);font-weight:var(--jsg-font-weight-medium);color:var(--jsg-color-gray-700);cursor:pointer}.jsg-checkbox__required{color:var(--jsg-color-danger-500)}.jsg-checkbox__description{margin:0;font-size:var(--jsg-font-size-sm);color:var(--jsg-color-text-muted)}.jsg-checkbox__error{margin:0;font-size:var(--jsg-font-size-sm);color:var(--jsg-color-danger-600)}.jsg-cta{padding:var(--jsg-space-8);border-radius:var(--jsg-radius-lg);background:var(--jsg-color-surface-muted);text-align:center}.jsg-cta__title{margin:0;font-size:var(--jsg-font-size-2xl);font-weight:var(--jsg-font-weight-bold)}.jsg-cta__text{margin:var(--jsg-space-2) 0 0;color:var(--jsg-color-text-muted)}.jsg-cta__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--jsg-space-3);margin-block-start:var(--jsg-space-6)}.jsg-data-row{display:flex;justify-content:space-between;gap:var(--jsg-space-4);padding-block:var(--jsg-space-2);border-block-end:1px solid var(--jsg-color-border-base)}.jsg-data-row__label{color:var(--jsg-color-text-muted);font-size:var(--jsg-font-size-sm)}.jsg-data-row__value{font-size:var(--jsg-font-size-sm);font-weight:var(--jsg-font-weight-medium);text-align:end}.jsg-data-row__value--yes{color:var(--jsg-color-success-600)}.jsg-data-row__value--no{color:var(--jsg-color-danger-500)}.jsg-divider{border:0;border-top:1px solid var(--jsg-color-border-base);margin:var(--jsg-space-4) 0}.jsg-divider--labeled{display:flex;align-items:center;gap:var(--jsg-space-3);border-top:0}.jsg-divider--labeled:after,.jsg-divider--labeled:before{content:"";flex:1;border-top:1px solid var(--jsg-color-border-base)}.jsg-divider__label{color:var(--jsg-color-text-muted);font-size:var(--jsg-font-size-sm);font-weight:var(--jsg-font-weight-medium);white-space:nowrap}.jsg-field{display:flex;flex-direction:column;gap:var(--jsg-space-1)}.jsg-field__label{font-size:var(--jsg-font-size-sm);font-weight:var(--jsg-font-weight-medium);color:var(--jsg-color-gray-700)}.jsg-field__required{color:var(--jsg-color-danger-500)}.jsg-field__control{inline-size:100%;min-block-size:2.75rem;padding:var(--jsg-space-2) var(--jsg-space-3);border:1px solid var(--jsg-color-border-strong);border-radius:var(--jsg-radius-md);background:var(--jsg-color-surface-base);color:var(--jsg-color-text-base);font-family:var(--jsg-font-family-body);font-size:var(--jsg-font-size-sm);box-shadow:var(--jsg-shadow-sm)}.jsg-field__control::placeholder{color:var(--jsg-color-gray-400)}.jsg-field__control:focus-visible{border-color:var(--jsg-color-border-focus)}.jsg-field--error .jsg-field__control{border-color:var(--jsg-color-danger-500)}.jsg-field__error{margin:0;font-size:var(--jsg-font-size-sm);color:var(--jsg-color-danger-600)}.jsg-fieldset{display:flex;flex-direction:column;gap:var(--jsg-space-4);min-inline-size:0;padding:var(--jsg-space-4);border:1px solid var(--jsg-color-border-base);border-radius:var(--jsg-radius-lg)}.jsg-fieldset__legend{padding-inline:var(--jsg-space-2);font-size:var(--jsg-font-size-sm);font-weight:var(--jsg-font-weight-medium);color:var(--jsg-color-gray-700)}.jsg-footer{padding-block:var(--jsg-space-6);border-block-start:1px solid var(--jsg-color-border-base);background:var(--jsg-color-surface-base);color:var(--jsg-color-text-muted);font-size:var(--jsg-font-size-sm);text-align:center}.jsg-footer__links{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--jsg-space-2) var(--jsg-space-4)}.jsg-footer__link{color:var(--jsg-color-text-link);text-decoration:none}.jsg-footer__link:hover{text-decoration:underline}.jsg-footer__note{margin:var(--jsg-space-2) 0 0}.jsg-header{position:sticky;inset-block-start:0;z-index:40;border-block-end:1px solid var(--jsg-color-border-base);background:var(--jsg-color-surface-base);box-shadow:var(--jsg-shadow-sm)}.jsg-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--jsg-space-4);min-block-size:4rem}.jsg-header__brand{display:inline-flex;align-items:center;gap:var(--jsg-space-3);color:var(--jsg-color-text-base);font-weight:var(--jsg-font-weight-semibold);text-decoration:none}.jsg-hero{padding-block:var(--jsg-space-12) var(--jsg-space-10)}.jsg-hero__title{margin:0;font-size:var(--jsg-font-size-4xl);font-weight:var(--jsg-font-weight-extrabold);line-height:var(--jsg-leading-tight)}.jsg-hero__subtitle{margin:var(--jsg-space-3) 0 0;font-size:var(--jsg-font-size-lg);color:var(--jsg-color-text-muted)}.jsg-hero__actions{display:flex;flex-wrap:wrap;gap:var(--jsg-space-3);margin-block-start:var(--jsg-space-6)}.jsg-media{display:flex;flex-direction:column;gap:var(--jsg-space-6)}.jsg-media__body{color:var(--jsg-color-text-base)}.jsg-media__title{margin:0 0 var(--jsg-space-2);font-size:var(--jsg-font-size-xl);font-weight:var(--jsg-font-weight-bold)}.jsg-media__image{inline-size:100%;block-size:auto;border-radius:var(--jsg-radius-lg)}@media (width >= 768px){.jsg-media{flex-direction:row;align-items:center}.jsg-media__body,.jsg-media__figure{flex:1}.jsg-media--reverse{flex-direction:row-reverse}}.jsg-navbar__list{display:flex;align-items:center;gap:var(--jsg-space-6);margin:0;padding:0;list-style:none}.jsg-navbar__link{color:var(--jsg-color-text-base);font-size:var(--jsg-font-size-sm);font-weight:var(--jsg-font-weight-medium);text-decoration:none}.jsg-navbar__link--active,.jsg-navbar__link:hover{color:var(--jsg-color-primary-600)}.jsg-navbar__link--active{font-weight:var(--jsg-font-weight-semibold)}.jsg-subnav{border-block-end:1px solid var(--jsg-color-border-base);background:var(--jsg-color-surface-muted)}.jsg-subnav__list{display:flex;gap:var(--jsg-space-5);margin:0;padding:var(--jsg-space-3) 0;overflow-x:auto;list-style:none}.jsg-subnav__link{color:var(--jsg-color-text-muted);font-size:var(--jsg-font-size-sm);font-weight:var(--jsg-font-weight-medium);white-space:nowrap;text-decoration:none}.jsg-subnav__link:hover{color:var(--jsg-color-text-base)}.jsg-subnav__link--active{color:var(--jsg-color-primary-600)}.jsg-section{padding-block:var(--jsg-space-10)}.jsg-section__header{margin-block-end:var(--jsg-space-8)}.jsg-section__title{margin:0;font-size:var(--jsg-font-size-2xl);font-weight:var(--jsg-font-weight-bold)}.jsg-section__intro{margin:var(--jsg-space-2) 0 0;color:var(--jsg-color-text-muted)}.jsg-stats{display:grid;grid-template-columns:1fr;gap:var(--jsg-space-4)}@media (width >= 768px){.jsg-stats{grid-template-columns:repeat(3,1fr)}}.jsg-stat{display:grid;justify-items:center;gap:var(--jsg-space-1);padding:var(--jsg-space-4);border:1px solid var(--jsg-color-border-base);border-radius:var(--jsg-radius-lg);background:var(--jsg-color-surface-base);text-align:center}.jsg-stat__icon{display:inline-flex;color:var(--jsg-color-primary-600)}.jsg-stat__value{font-size:var(--jsg-font-size-2xl);font-weight:var(--jsg-font-weight-extrabold);line-height:var(--jsg-leading-tight)}.jsg-stat__label{color:var(--jsg-color-text-muted);font-size:var(--jsg-font-size-xs);font-weight:var(--jsg-font-weight-semibold);letter-spacing:.05em;text-transform:uppercase}.jsg-stepper__list{display:flex;align-items:center;margin:0;padding:0;list-style:none}.jsg-stepper__item{display:flex;align-items:center;gap:var(--jsg-space-2)}.jsg-stepper__item:not(:last-child){flex:1}.jsg-stepper__marker{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;inline-size:2rem;block-size:2rem;border:2px solid var(--jsg-color-border-strong);border-radius:var(--jsg-radius-full);background:var(--jsg-color-surface-base);font-weight:var(--jsg-font-weight-medium)}.jsg-stepper__label,.jsg-stepper__marker{color:var(--jsg-color-text-muted);font-size:var(--jsg-font-size-sm)}.jsg-stepper__label{white-space:nowrap}.jsg-stepper__line{flex:1;block-size:2px;margin-inline:var(--jsg-space-2);background:var(--jsg-color-border-strong)}.jsg-stepper__item--done .jsg-stepper__marker{border-color:var(--jsg-color-primary-600);background:var(--jsg-color-primary-600);color:var(--jsg-color-text-inverse)}.jsg-stepper__item--done .jsg-stepper__line{background:var(--jsg-color-primary-600)}.jsg-stepper__item--active .jsg-stepper__marker{border-color:var(--jsg-color-primary-600);color:var(--jsg-color-primary-600)}.jsg-stepper__item--active .jsg-stepper__label,.jsg-stepper__item--done .jsg-stepper__label{color:var(--jsg-color-text-base);font-weight:var(--jsg-font-weight-medium)}@media (width < 640px){.jsg-stepper__label{display:none}}