:root{color-scheme:light;--ink: #16143a;--ink-soft: #4d4b6b;--ink-faint: #615f7e;--accent: #4126a8;--accent-bright: #5236c2;--accent-deep: #321a85;--violet: #7a62d6;--gold: #c8a24a;--gold-deep: #7a5c14;--success: #15803d;--danger: #b91c1c;--page: #f6f5fa;--glass: rgba(255, 255, 255, .62);--glass-soft: rgba(255, 255, 255, .4);--glass-strong: rgba(255, 255, 255, .78);--glass-fallback: rgba(255, 255, 255, .94);--glass-border: rgba(255, 255, 255, .85);--glass-edge: rgba(110, 100, 160, .16);--neu-light: rgba(255, 255, 255, .95);--neu-dark: rgba(122, 112, 166, .3);--neu-face: linear-gradient(145deg, #fbfafe, #eeedf6);--neu-face-pressed: linear-gradient(145deg, #e9e8f3, #f6f5fb);--radius-sm: 12px;--radius-md: 18px;--radius-lg: 24px;--ease: cubic-bezier(.2, .7, .2, 1)}@layer base{html,body{width:100%;margin:0;padding:0;overscroll-behavior-y:none}.pb-safe{padding-bottom:env(safe-area-inset-bottom,0px)}.pt-safe{padding-top:env(safe-area-inset-top,0px)}main>:first-child{margin-top:0!important}main>:last-child{margin-bottom:0!important}}html{background:var(--page);-webkit-text-size-adjust:100%}body{background:transparent;color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::selection{background:#4126a833}*{scrollbar-width:thin;scrollbar-color:rgba(110,100,160,.4) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#6e64a059;border-radius:999px}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;-webkit-user-select:none;user-select:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}:focus:not(:focus-visible){outline:none}.ambient{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(1200px 700px at 12% -10%,rgba(255,255,255,.95),transparent 60%),linear-gradient(180deg,#f8f7fc,#f1f0f8)}.ambient span{position:absolute;border-radius:50%;filter:blur(80px);opacity:.3;will-change:transform}.ambient .orb-1{width:48vmax;height:48vmax;left:-16vmax;top:-20vmax;background:radial-gradient(circle,#b9aee9,transparent 66%);animation:drift-a 38s ease-in-out infinite alternate}.ambient .orb-2{width:40vmax;height:40vmax;right:-14vmax;top:8vmax;background:radial-gradient(circle,#ddd0f5,transparent 66%);opacity:.3;animation:drift-b 44s ease-in-out infinite alternate}.ambient .orb-3{width:36vmax;height:36vmax;left:22vmax;bottom:-22vmax;background:radial-gradient(circle,#ecd9a8,transparent 66%);opacity:.28;animation:drift-a 52s ease-in-out infinite alternate-reverse}@keyframes drift-a{to{transform:translate3d(5vmax,4vmax,0) scale(1.08)}}@keyframes drift-b{to{transform:translate3d(-6vmax,5vmax,0) scale(.94)}}.glass{position:relative;color:var(--ink);background:var(--glass-fallback);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:inset 0 1px #ffffffe6,0 12px 32px -14px #281e5a38,0 2px 6px #281e5a0d}.glass--soft{background:#ffffffb8;box-shadow:inset 0 1px #fffc,0 6px 18px -12px #281e5a2e}.glass--strong{background:#ffffffeb;border-radius:var(--radius-lg)}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.glass{background:var(--glass);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%)}.glass--strong{background:var(--glass-strong);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}.glass--soft{background:var(--glass-soft);-webkit-backdrop-filter:blur(12px) saturate(140%);backdrop-filter:blur(12px) saturate(140%)}}.glass--accent{color:#fff;background:linear-gradient(135deg,#2a1a78,#3b2597 60%,#5a3fc4);border-color:#ffffff40;box-shadow:inset 0 1px #ffffff59,0 18px 40px -16px #4126a88c}.glass--accent:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:radial-gradient(600px 220px at 85% -20%,rgba(255,255,255,.28),transparent 60%)}.glass-lift{transition:transform .28s var(--ease),box-shadow .28s var(--ease)}.glass-lift:hover,.glass-lift:focus-visible{transform:translateY(-2px);box-shadow:inset 0 1px #ffffffe6,0 22px 40px -16px #281e5a4d,0 2px 6px #281e5a0f}.glass-lift:active{transform:translateY(-1px)}.glass-panel{background:#ffffff8c;border:1px solid rgba(255,255,255,.8);border-radius:var(--radius-md);box-shadow:inset 0 1px #fffc}.neu-raised{background:var(--neu-face);border-radius:var(--radius-md);box-shadow:6px 6px 14px var(--neu-dark),-6px -6px 14px var(--neu-light),inset 0 1px #ffffffb3}.neu-raised--sm{box-shadow:4px 4px 9px var(--neu-dark),-4px -4px 9px var(--neu-light),inset 0 1px #ffffffb3}.neu-inset{background:var(--neu-face-pressed);border-radius:var(--radius-md);box-shadow:inset 4px 4px 9px var(--neu-dark),inset -4px -4px 9px var(--neu-light)}.neu-well{background:#e4e2f299;border-radius:var(--radius-md);box-shadow:inset 3px 3px 7px #7a70a652,inset -3px -3px 7px #ffffffd9}.neu-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2.5rem;height:2.5rem;color:var(--accent);background:var(--neu-face);border-radius:14px;box-shadow:4px 4px 9px var(--neu-dark),-4px -4px 9px var(--neu-light),inset 0 1px #ffffffb3;transition:transform .2s var(--ease),box-shadow .2s var(--ease),color .2s}.neu-icon--round{border-radius:999px}.neu-icon--sm{width:2rem;height:2rem;border-radius:11px}.neu-icon--lg{width:3rem;height:3rem;border-radius:16px}button.neu-icon,a.neu-icon{cursor:pointer}button.neu-icon:hover,a.neu-icon:hover{transform:translateY(-1px)}button.neu-icon:active,a.neu-icon:active{transform:scale(.95);background:var(--neu-face-pressed);box-shadow:inset 3px 3px 7px var(--neu-dark),inset -3px -3px 7px var(--neu-light)}.neu-btn{position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;color:var(--ink);font-weight:600;letter-spacing:-.005em;text-decoration:none;background:var(--neu-face);border:0;box-shadow:6px 6px 14px var(--neu-dark),-6px -6px 14px var(--neu-light),inset 0 1px #ffffffb3;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s,color .2s,filter .2s}.neu-btn:hover{transform:translateY(-1px);box-shadow:8px 9px 18px var(--neu-dark),-7px -7px 16px var(--neu-light),inset 0 1px #ffffffb3}.neu-btn:active{transform:scale(.98);background:var(--neu-face-pressed);box-shadow:inset 4px 4px 9px var(--neu-dark),inset -4px -4px 9px var(--neu-light)}.neu-btn--primary{color:#fff;background:linear-gradient(145deg,var(--accent-bright),#3a2394);box-shadow:0 12px 24px -10px #4126a8a6,5px 5px 12px #7a70a661,-4px -4px 10px #ffffffe6,inset 0 1px #ffffff61}.neu-btn--primary:hover{filter:brightness(1.06) saturate(1.05);box-shadow:0 16px 28px -10px #4126a8b3,6px 7px 14px #7a70a666,-5px -5px 12px #ffffffe6,inset 0 1px #ffffff6b}.neu-btn--primary:active{background:linear-gradient(145deg,#3a2394,var(--accent-bright));box-shadow:inset 4px 4px 10px #190c5080,inset -3px -3px 8px #9682f066}.neu-btn--dark{color:#fff;background:linear-gradient(145deg,#3a3768,#16143a);box-shadow:0 12px 22px -10px #16143a99,4px 4px 10px #7a70a659,-4px -4px 10px #ffffffe6,inset 0 1px #ffffff2e}.neu-btn--dark:active{background:linear-gradient(145deg,#16143a,#3a3768);box-shadow:inset 4px 4px 10px #00000080,inset -3px -3px 8px #8c82c840}.neu-btn--subtle{color:var(--accent-deep);background:linear-gradient(145deg,#f6f4fd,#e9e5f8)}.neu-btn--outline{color:var(--accent-deep);background:#ffffff59;box-shadow:inset 0 0 0 1.5px #4126a859,0 1px #fffc}.neu-btn--outline:hover{background:#ffffffb3;box-shadow:inset 0 0 0 1.5px #4126a88c,4px 5px 12px var(--neu-dark),-4px -4px 10px var(--neu-light)}.neu-btn--ghost{color:var(--ink-soft);background:transparent;box-shadow:none}.neu-btn--ghost:hover{color:var(--ink);background:#fff9;box-shadow:3px 3px 8px var(--neu-dark),-3px -3px 8px var(--neu-light)}.neu-btn:disabled,.neu-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none;filter:grayscale(.25);box-shadow:none;background:#dedceebf;color:var(--ink-faint)}.neu-btn.is-loading{cursor:progress;pointer-events:none}.spinner{width:1.1em;height:1.1em;border-radius:50%;border:2.5px solid currentColor;border-right-color:transparent;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.neu-input{width:100%;color:var(--ink);background:var(--neu-face-pressed);border:1px solid transparent;border-radius:var(--radius-md);box-shadow:inset 4px 4px 9px var(--neu-dark),inset -4px -4px 9px var(--neu-light);transition:box-shadow .2s,border-color .2s,background .2s}.neu-input::placeholder{color:var(--ink-faint);opacity:.85}.neu-input:hover{border-color:#4126a81f}.neu-input:focus,.neu-input:focus-visible{outline:none;border-color:#4126a88c;background:linear-gradient(145deg,#f3f1fa,#fcfbff);box-shadow:inset 3px 3px 7px #7a70a64d,inset -3px -3px 7px var(--neu-light),0 0 0 4px #4126a824}.neu-input:disabled{opacity:.6;cursor:not-allowed}.neu-chip{display:inline-flex;align-items:center;gap:.375rem;cursor:pointer;color:var(--ink-soft);background:var(--neu-face);border-radius:999px;box-shadow:3px 3px 7px var(--neu-dark),-3px -3px 7px var(--neu-light);transition:transform .2s var(--ease),box-shadow .2s var(--ease),color .2s}.neu-chip:hover{transform:translateY(-1px)}.neu-chip[aria-pressed=true],.neu-chip.is-selected{color:var(--accent-deep);background:var(--neu-face-pressed);box-shadow:inset 3px 3px 7px var(--neu-dark),inset -3px -3px 7px var(--neu-light)}.pill{display:inline-flex;align-items:center;gap:.375rem;border-radius:999px;background:#ffffffb3;border:1px solid rgba(255,255,255,.9);box-shadow:0 1px 2px #281e5a14}.pill--accent{color:var(--accent-deep);background:#4126a81a;border-color:#4126a81f}.pill--gold{color:var(--gold-deep);background:#c8a24a29;border-color:#c8a24a4d}.segmented{display:flex;gap:.25rem;padding:.375rem;border-radius:999px;background:var(--neu-face-pressed);box-shadow:inset 3px 3px 8px var(--neu-dark),inset -3px -3px 8px var(--neu-light)}.segmented__item{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;min-height:2.5rem;padding:.5rem .75rem;border-radius:999px;color:var(--ink-soft);font-weight:600;cursor:pointer;transition:background .25s var(--ease),color .2s,box-shadow .25s var(--ease),transform .2s var(--ease)}.segmented__item:hover{color:var(--ink)}.segmented__item:active{transform:scale(.97)}.segmented__item[aria-selected=true],.segmented__item[aria-current=true]{color:#fff;background:linear-gradient(145deg,var(--accent-bright),#3a2394);box-shadow:0 8px 16px -8px #4126a8b3,inset 0 1px #ffffff59}.nav-item{display:inline-flex;align-items:center;gap:.375rem;min-height:2.5rem;padding:0 .875rem;border-radius:999px;color:var(--ink-soft);font-weight:600;text-decoration:none;transition:background .25s var(--ease),box-shadow .25s var(--ease),color .2s}.nav-item:hover{color:var(--ink);background:#fff9}.nav-item[aria-current=page]{color:var(--accent-deep);background:var(--neu-face-pressed);box-shadow:inset 3px 3px 7px var(--neu-dark),inset -3px -3px 7px var(--neu-light)}.progress-track{height:.5rem;overflow:hidden;border-radius:999px;background:#dcdaecd9;box-shadow:inset 2px 2px 4px #7a70a666,inset -2px -2px 4px #ffffffd9}.progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--violet));box-shadow:0 0 10px #4126a859;transition:width .6s var(--ease)}.dropzone{position:relative;border:2px dashed rgba(65,38,168,.28);border-radius:var(--radius-lg);background:#ffffff59;transition:border-color .25s,background .25s,transform .25s var(--ease),box-shadow .25s var(--ease)}.dropzone.is-dragover{border-color:var(--accent);background:#4126a814;transform:scale(1.01);box-shadow:0 0 0 6px #4126a81a}.dropzone.is-disabled{opacity:.6}.option{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.875rem 1rem;border-radius:var(--radius-md);cursor:pointer;color:var(--ink);background:var(--neu-face);box-shadow:4px 4px 10px var(--neu-dark),-4px -4px 10px var(--neu-light);transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s}.option:hover{transform:translateY(-1px)}.option:active{transform:scale(.99)}.option.is-selected{background:linear-gradient(145deg,#e8e3fa,#f4f1fd);box-shadow:inset 3px 3px 8px #645abe47,inset -3px -3px 8px #ffffffe6,0 0 0 1.5px #4126a88c}.option:focus-within{outline:2px solid var(--accent);outline-offset:2px}.rise{animation:rise .55s var(--ease) both;animation-delay:calc(var(--i, 0) * 70ms)}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}.flip-in{animation:flip-in .4s var(--ease) both}@keyframes flip-in{0%{opacity:0;transform:rotateX(-12deg) translateY(6px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.ambient span{animation:none!important}.spinner{animation:spin 1.6s linear infinite!important}}.progress-fill--indeterminate{width:40%;transition:none;animation:indeterminate 1.5s var(--ease) infinite}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(260%)}}.sh-logo{--logo-fg: var(--ink);display:inline-flex;align-items:center;gap:.5em;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif;line-height:1;color:var(--logo-fg);white-space:nowrap;-webkit-user-select:none;user-select:none}.sh-logo--dark{--logo-fg: #fff}.sh-logo--xs{font-size:11px}.sh-logo--sm{font-size:13px}.sh-logo--md{font-size:16px}.sh-logo--lg{font-size:26px}.sh-logo--xl{font-size:44px}.sh-logo--fluid{font-size:clamp(14px,2.2vw + 6px,40px)}.sh-logo--nav{font-size:14px}@media(min-width:640px){.sh-logo--nav{font-size:16px}}.sh-logo__emblem{display:block;width:2.1em;height:2.1em;flex-shrink:0;overflow:visible;color:var(--logo-fg);transition:transform .35s var(--ease),filter .35s var(--ease)}.sh-logo__word{font-size:1.3em;font-weight:800;letter-spacing:-.02em}a:hover>.sh-logo .sh-logo__emblem,a:focus-visible>.sh-logo .sh-logo__emblem,.sh-logo:hover .sh-logo__emblem{transform:translateY(-1px) scale(1.07) rotate(-4deg);filter:drop-shadow(0 3px 5px rgba(22,20,58,.22))}.sh-logo__flame,.sh-logo__core,.sh-logo__spark{transform-box:fill-box}.sh-logo.is-animated .sh-logo__spark{transform-origin:50% 50%;animation:sh-spark 3.8s ease-in-out infinite}@keyframes sh-spark{0%{transform:translateY(2px) scale(.5);opacity:0}30%{opacity:1}65%{transform:translateY(-2px) scale(1);opacity:1}to{transform:translateY(-4px) scale(.6);opacity:0}}
