:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#060a1a;--panel:#0d1430;--panel2:#131b3b;--line:#222c4d;--muted:#8d97bb;--text:#eef1ff;--violet:#a889ff;--cyan:#65e1ec;--coral:#ff9a8e;--yellow:#ffd179;--panel-phase:#101831;--ring-track:#2b3454;--phase-1:var(--violet);--phase-2:#8fb3ff;--phase-3:#ffbd88;--phase-4:#e4a6ff;--phase-5:#82dcaf;--phase-6:#ffd179;--sky-stars:radial-gradient(1px 1px at 20px 30px, #ffffffb0, transparent), radial-gradient(1px 1px at 140px 90px, #ffffff70, transparent), radial-gradient(1.5px 1.5px at 80px 160px, #c9d4ff90, transparent), radial-gradient(1px 1px at 230px 210px, #ffffff60, transparent), radial-gradient(1px 1px at 60px 260px, #b5f3f860, transparent);--sky-size:290px 290px, 290px 290px, 290px 290px, 290px 290px, 290px 290px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);font-variant-numeric:tabular-nums;background:var(--sky-stars), radial-gradient(900px 600px at 85% -10%, #a889ff1f, transparent 70%), radial-gradient(800px 700px at -10% 110%, #65e1ec14, transparent 70%), var(--bg);background-size:var(--sky-size), auto, auto, auto;scrollbar-color:#2e3a63 transparent;background-attachment:fixed;margin:0;font-family:DM Sans,sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.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}.app-shell{grid-template-columns:255px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#070c1fcc;flex-direction:column;height:100vh;padding:32px 20px 24px;display:flex;position:sticky;top:0}.sidebar-menu{display:contents}.menu-toggle{display:none}.brand{letter-spacing:-1.8px;align-items:center;gap:10px;font-family:Space Grotesk,sans-serif;font-size:28px;font-weight:700;text-decoration:none;display:flex}.brand-mark{background:var(--violet);width:38px;height:38px;color:var(--bg);border-radius:12px;place-items:center;font-size:27px;display:grid}.brand-dot{color:var(--cyan)}.sidebar-intro{color:var(--muted);margin:24px 10px 34px;font-size:13px;line-height:1.55}.sidebar nav{gap:6px;display:grid}.nav-link{min-height:48px;color:var(--muted);border-radius:11px;align-items:center;gap:12px;padding:12px 10px;font-size:13px;line-height:1.3;text-decoration:none;display:flex}.nav-link:hover{color:var(--text);background:#ffffff08}.nav-link.is-current{color:var(--text);box-shadow:inset 2px 0 0 var(--violet);background:linear-gradient(90deg,#a889ff24,#0000)}.sidebar.is-subpage .nav-link.is-current{box-shadow:none;background:0 0}.nav-link[aria-current=page]{color:var(--text);box-shadow:inset 2px 0 0 var(--violet);background:linear-gradient(90deg,#a889ff24,#0000)}.nav-link[aria-current=page] .nav-number,.nav-link.is-current .nav-number{border-color:var(--violet);color:var(--violet)}.nav-number{border:1px solid var(--line);border-radius:8px;place-items:center;width:25px;height:25px;font-family:Space Grotesk;font-size:11px;display:grid}.nav-state{border-radius:50%;flex:none;place-items:center;width:18px;height:18px;margin-left:auto;font-size:11px;display:grid}.nav-state.is-done{background:var(--cyan);color:var(--bg);font-weight:800;box-shadow:0 0 10px #65e1ec66}.nav-state.is-current{border:1.5px solid var(--violet);background:radial-gradient(circle, var(--violet) 0 3px, transparent 3.5px);box-shadow:0 0 10px #a889ff55}.nav-state.is-future{border:1.5px solid #3b4670;width:8px;height:8px;margin-right:5px}.nav-divider{background:var(--line);height:1px;margin:12px 0}.sidebar-bottom{border:1px solid var(--line);background:#151e3a;border-radius:14px;margin-top:auto;padding:16px}.level-label{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}.level-label strong{color:var(--text)}.level-share{padding:0}.mini-progress,.phase-bar{background:#2a3555;border-radius:99px;height:6px;overflow:hidden}.mini-progress{margin-top:13px}.mini-progress span,.phase-bar span{background:linear-gradient(90deg, var(--violet), var(--cyan));border-radius:inherit;width:0;height:100%;transition:width .4s;display:block}.sidebar-bottom p{color:var(--muted);margin:9px 0 0;font-size:11px}main{width:100%;min-width:0;max-width:1600px;margin:auto;padding:0 clamp(22px,5vw,76px)}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;height:79px;display:flex}.breadcrumb{color:var(--muted);font-size:12px}.breadcrumb span{color:#5b6888;padding:0 8px}.breadcrumb a{color:inherit;text-decoration:none}.breadcrumb a:hover{color:var(--text)}main:focus{outline:none}.top-actions{align-items:center;gap:17px;display:flex}.text-button,.import-button{color:var(--muted);background:0 0;border:0;padding:7px 0;font-size:12px}.text-button:hover,.import-button:hover{color:var(--text)}.import-button{cursor:pointer}.import-button input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero{justify-content:space-between;align-items:center;gap:20px;padding:40px 0 36px;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:1;flex:1;max-width:700px;position:relative;container-type:inline-size}h1,h2,h3{font-family:Space Grotesk,sans-serif}h1{letter-spacing:-.065em;text-wrap:balance;margin:18px 0;font-size:clamp(40px,9.6cqi,62px);line-height:1.07}h1 .no-break{white-space:nowrap}.hero p{max-width:560px;color:var(--muted);font-size:15px;line-height:1.65}.primary-button{color:#0a0820;white-space:nowrap;background:linear-gradient(#bda6ff,#9577ff);border:0;border-radius:14px;padding:14px 22px;font-weight:700;transition:transform .15s,box-shadow .15s;box-shadow:inset 0 1px #fff6,0 10px 30px #8d67ff4d}.primary-button:hover{transform:translateY(-1px);box-shadow:inset 0 1px #fff6,0 14px 36px #8d67ff66}.primary-button:active{transform:translateY(0)}.ghost-button{color:var(--text);background:#ffffff08;border:1px solid #ffffff1f;border-radius:14px;padding:13px 20px;font-weight:600}.ghost-button:hover{background:#a889ff14;border-color:#a889ff80}.orbit-wrap{flex:none;place-items:center;width:310px;height:310px;margin-right:30px;display:grid;position:relative}.orbit{border:1px solid #68749d55;border-radius:50%;position:absolute}.orbit-one{width:245px;height:245px}.orbit-two{border-style:dashed;width:308px;height:308px;transform:rotate(20deg)}.orbit-satellite{--r:154px;transform:rotate(var(--start)) translateX(var(--r));animation:satellite-orbit var(--period) linear infinite, satellite-twinkle var(--blink) ease-in-out infinite alternate;border-radius:50%;position:absolute;top:50%;left:50%}.satellite-one{--start:-58deg;--period:48s;--blink:2.6s;background:var(--coral);width:12px;height:12px;box-shadow:0 0 25px var(--coral);margin:-6px 0 0 -6px}.satellite-two{--start:128deg;--period:72s;--blink:3.4s;background:var(--cyan);width:8px;height:8px;box-shadow:0 0 25px var(--cyan);margin:-4px 0 0 -4px;animation-delay:0s,-1.2s}@keyframes satellite-orbit{to{transform:rotate(calc(var(--start) + 360deg)) translateX(var(--r))}}@keyframes satellite-twinkle{0%{opacity:1;scale:1}to{opacity:.55;scale:.8}}.progress-ring{background:conic-gradient(var(--violet) var(--p), var(--ring-track) var(--p));border-radius:50%;place-items:center;width:203px;height:203px;transition:background .3s;display:grid;box-shadow:0 0 60px #8e6aff20}.ring-inner{background:#101830;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:171px;height:171px;display:flex}.ring-inner span{letter-spacing:-.08em;font:700 48px Space Grotesk}.ring-inner small{color:var(--muted);font-size:12px}.next-step{background:radial-gradient(600px 300px at 0 0,#a889ff26,#0000 70%),linear-gradient(#121a3dcc,#0b1230e6);border:1px solid #a889ff47;border-radius:24px;grid-template-columns:minmax(0,1fr) auto;gap:8px 40px;margin:28px 0;padding:34px 36px 0;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff12,0 30px 60px #02051666}.next-step-title{color:var(--violet);margin:0;font:600 14px DM Sans,sans-serif}.next-step-area{color:var(--muted);margin:18px 0 6px;font-size:15px}.next-step-topic{letter-spacing:-.045em;text-wrap:balance;margin:0 0 26px;font:700 clamp(30px,4.4vw,48px)/1.05 Space Grotesk,sans-serif;display:block}.next-step-topic.is-challenge{letter-spacing:-.03em;max-width:30ch;font-size:clamp(22px,2.4vw,30px);line-height:1.2}.next-step-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.next-step-actions button{min-height:48px}.next-step-footer{color:var(--muted);margin:16px 0 30px;font-size:13px}.next-step-review{background:#ffffff08;border:1px solid #a889ff33;border-radius:16px;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 26px;padding:14px 18px;display:flex}.next-step-review p{flex:1;min-width:200px;margin:0;font-size:14px;line-height:1.5}.next-step-review-when{color:var(--muted)}.next-step-review-actions{gap:8px;display:flex}.next-step-review-actions button{min-height:40px;padding:9px 16px;font-size:13px}.next-step-review-note{flex-basis:100%}.review-note-text{border:1px solid var(--line);color:var(--text);white-space:pre-wrap;background:#10182f;border-radius:10px;margin:8px 0 0;padding:10px 12px;font-size:13px;line-height:1.5}.review-comet{background:radial-gradient(circle at right, var(--violet) 0 3px, #a889ff00 4px), linear-gradient(90deg, transparent, #a889ffa0 85%, transparent);background-repeat:no-repeat;flex:none;width:30px;height:8px}.area-orbit{--size:176px;width:var(--size);height:var(--size);border:1px dashed #a889ff40;border-radius:50%;align-self:center;margin-bottom:24px;position:relative}.area-orbit i{width:9px;height:9px;transform:rotate(calc(360deg / var(--n) * var(--i) - 90deg)) translateX(calc(var(--size) / 2));background:#2a3561;border-radius:50%;margin:-4.5px;position:absolute;top:50%;left:50%}.area-orbit i.is-done{background:var(--cyan);box-shadow:0 0 10px var(--cyan)}.area-orbit i.is-next{background:var(--violet);width:13px;height:13px;box-shadow:0 0 0 4px #a889ff33, 0 0 16px var(--violet);margin:-6.5px}.area-orbit-core{letter-spacing:-.04em;color:#d9ccff;background:radial-gradient(circle at 35% 30%,#3a2f7a,#151b45 70%);border-radius:50%;place-items:center;font:700 30px Space Grotesk,sans-serif;display:grid;position:absolute;inset:38px;box-shadow:inset 0 -8px 20px #0006,0 0 40px #a889ff33}.next-step-meta{color:var(--muted);background:#060a1a66;border-top:1px solid #ffffff12;flex-wrap:wrap;grid-column:1/-1;gap:8px 28px;margin:0 -36px;padding:16px 36px;font-size:13px;display:flex}.next-step-meta strong{color:var(--text);font-weight:700}.next-step-goal{color:#c4b3ff;margin-left:auto}.next-step-week{flex-wrap:wrap;align-items:center;gap:6px 8px;display:inline-flex}.next-step-week>span{white-space:nowrap}.week-hit{color:var(--cyan)}.week-dots{gap:4px;display:inline-flex}.week-dots i{background:#2a3561;border-radius:50%;width:7px;height:7px}.week-dots i.is-done{background:var(--cyan);box-shadow:0 0 6px var(--cyan)}.xp-value{display:inline-block}.xp-value.is-pulsing{animation:.5s xp-pulse}@keyframes xp-pulse{0%{color:var(--text);transform:scale(1)}40%{color:var(--cyan);transform:scale(1.35)}to{color:var(--text);transform:scale(1)}}@media (width<=580px){.next-step{border-radius:20px;grid-template-columns:minmax(0,1fr);padding:26px 22px 0}.area-orbit{display:none}.next-step-meta{margin:0 -22px;padding:14px 22px}.next-step-goal{margin-left:0}}.journey{padding-top:47px}.achievements{padding-top:67px}.section-heading h2{letter-spacing:-.045em;margin:0 0 10px;font-size:clamp(28px,3vw,40px)}.section-heading p{color:var(--muted);max-width:62ch;margin:0;font-size:15px;line-height:1.6}.toolbar{justify-content:space-between;gap:14px;margin:31px 0 21px;display:flex}.search-field{border:1px solid var(--line);width:min(380px,100%);color:var(--muted);background:#0d1430b3;border-radius:14px;align-items:center;gap:9px;padding:0 16px;font-size:24px;transition:border-color .15s;display:flex}.search-field:focus-within{border-color:#a889ff80}.search-field>span{place-items:center;line-height:1;display:grid}.search-field input{color:var(--text);background:0 0;border:0;outline:0;width:100%;padding:12px 0;font-size:13px}.search-field input::placeholder{color:#7483a4}.filter-group{border:1px solid var(--line);background:#0d1430b3;border-radius:14px;gap:4px;padding:4px;display:flex}.filter{color:var(--muted);background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;display:inline-flex}.filter:hover{color:var(--text)}.filter.active{color:var(--text);background:#a889ff26}.phase-section{border-top:1px solid var(--line);margin:0;scroll-margin-top:20px}.phase-section:last-child{border-bottom:1px solid var(--line)}.phase-head{background:0 0;border-radius:16px;grid-template-columns:44px 1fr minmax(120px,210px);align-items:center;gap:18px;padding:20px 8px;transition:background .15s;display:grid}.phase-head:hover{background:#ffffff06}.phase-glyph{border-radius:50%;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.phase-heading{font:inherit;margin:0}.phase-name{letter-spacing:-.03em;margin:0 0 4px;font:700 19px Space Grotesk,sans-serif;display:block}.phase-desc{color:var(--muted);margin:0;font-size:12px;display:block}.phase-bar{margin-top:8px}.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.topic-entry{border:1px solid var(--line);background:#10182f;border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:9px 11px;font-size:12px;display:flex}.topic-entry:hover{border-color:#6174a3}.topic{cursor:pointer;flex:1 1 0;align-items:center;gap:12px;min-width:120px;line-height:1.4;display:flex}.topic input{appearance:none;cursor:pointer;background:#0b1130;border:1.5px solid #4a5789;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;margin:0;transition:background .15s,border-color .15s,box-shadow .15s;display:grid}.topic input:after{content:"";border:2px solid #03222a;border-width:0 2px 2px 0;width:5px;height:9px;margin-top:-2px;transition:transform .15s;transform:rotate(45deg)scale(0)}.topic input:checked{border-color:var(--cyan);background:var(--cyan);box-shadow:0 0 10px #65e1ec80}.topic input:checked:after{transform:rotate(45deg)scale(1)}.topic input:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.topic-entry.checked{color:#9fb0cf;background:#0f1d3a;border-color:#28496a}.topic-entry.is-highlighted{border-color:var(--violet);transition:border-color .6s,box-shadow .6s;box-shadow:0 0 0 3px #a889ff40,0 0 20px #a889ff40}.resource{border:1px solid var(--line);background:#1a2544;border-radius:9px;padding:12px;display:block}.resource.is-read{border-color:#65e1ec4d}.resource:hover{border-color:var(--violet);background:#243156}.resource-link{text-decoration:none;display:block}.resource small{color:var(--cyan);margin-bottom:7px;font-size:10px;display:block}.resource span{font-size:11px;font-weight:600;line-height:1.35}.resource-why{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.45}.resource-read-toggle{align-items:center;margin-top:9px;padding:0;font-size:11px;display:flex}.resource-read-toggle[aria-pressed=true]{color:var(--cyan)}.empty-state{border:1px dashed var(--line);color:var(--muted);border-radius:12px;padding:28px}.badge-grid{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.badge{border:1px solid var(--line);cursor:default;background:#0d1430b3;border-radius:20px;flex:140px;justify-items:start;gap:4px;padding:18px;display:grid}.badge-icon{border-radius:50%;place-items:center;width:46px;height:46px;margin-bottom:10px;font-size:20px;display:grid}.badge.is-unlocked{background:radial-gradient(260px 120px at 0 0,#ffd1791a,#0000 70%),#0d1430b3;border-color:#ffd17940}.badge.is-unlocked .badge-icon{background:radial-gradient(circle at 35% 30%,#3a2f1a,#171326 75%);box-shadow:inset 0 0 0 1.5px #ffd179,0 0 20px #ffd17940}.badge.locked .badge-icon{filter:grayscale();opacity:.55;border:1px dashed #3b4670}.badge strong{font:700 14px Space Grotesk,sans-serif}.badge small{color:var(--muted);font-size:12px;line-height:1.4}.badge.locked strong{color:#b7bfdc}.badge-share{margin-top:4px;padding:0}.journey-share{margin-top:22px}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;margin-top:70px;padding:26px 0 40px;font-size:11px;display:flex}footer p{margin:0}.footer-contact a{color:var(--text);text-underline-offset:3px;text-decoration:underline}.footer-contact a:hover{color:var(--violet)}.toast{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text);opacity:0;pointer-events:none;z-index:10;background:#141c40d9;border:1px solid #a889ff66;border-radius:16px;padding:14px 18px;font-size:14px;transition:all .25s;position:fixed;bottom:26px;right:26px;transform:translateY(15px);box-shadow:inset 0 1px #ffffff14,0 20px 50px #0009}.toast.show{opacity:1;pointer-events:auto;transform:translateY(0)}.toast-share{color:var(--text);background:#ffffff12;border:1px solid #fff3;border-radius:10px;margin:10px auto 0;padding:8px 16px;font:600 12px DM Sans,sans-serif;display:block}.toast-share:hover{border-color:var(--cyan);background:#65e1ec1a}.toast-area{border-color:var(--cyan);align-items:center;gap:10px;padding:15px 20px;font-size:14px;display:flex}.toast-icon{background:color-mix(in srgb, var(--cyan) 25%, transparent);width:22px;height:22px;color:var(--cyan);border-radius:50%;flex:none;place-items:center;font-size:13px;display:grid}.toast-big{text-align:center;border-color:var(--violet);min-width:260px;max-width:min(420px,100vw - 40px);box-shadow:0 20px 60px #000a, 0 0 40px color-mix(in srgb, var(--violet) 35%, transparent);background:linear-gradient(160deg,#2c2158,#1a2547);padding:22px 28px;font:700 16px Space Grotesk;bottom:40px;left:50%;right:auto;transform:translate(-50%,15px)}.toast-big.show{transform:translate(-50%)}.toast-particles{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.toast-particles span{left:calc(8% + var(--i) * 11%);background:var(--cyan);opacity:0;width:5px;height:5px;animation:toast-particle 1.4s ease-out calc(var(--i) * 80ms) infinite;border-radius:50%;position:absolute;bottom:10%}.toast-particles span:nth-child(odd){background:var(--violet)}@keyframes toast-particle{0%{opacity:0;transform:translateY(0)scale(1)}20%{opacity:1}to{opacity:0;transform:translateY(-55px)scale(.4)}}@media (width<=580px){.toast-big{bottom:20px}}@media (width<=1100px){.orbit-wrap{width:254px;height:254px;margin-right:0}.orbit-one{width:200px;height:200px}.orbit-two{width:252px;height:252px}.orbit-satellite{--r:126px}.progress-ring{width:166px;height:166px}.ring-inner{width:140px;height:140px}.ring-inner span{font-size:40px}}@media (width<=1000px){.orbit-wrap{display:none}}@media (width<=820px){.app-shell{display:block}.sidebar{z-index:20;border-right:0;border-bottom:1px solid var(--line);height:auto;padding:12px 22px;top:0}.sidebar-head{justify-content:space-between;align-items:center;display:flex}.brand{font-size:23px}.brand-mark{width:31px;height:31px;font-size:22px}.menu-toggle{border:1px solid var(--line);background:var(--panel);border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{background:var(--text);border-radius:2px;width:18px;height:2px;transition:transform .2s,background .2s;display:block}.menu-toggle span{position:relative}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0}.menu-toggle span:before{top:-6px}.menu-toggle span:after{top:6px}.sidebar.is-open .menu-toggle span{background:0 0}.sidebar.is-open .menu-toggle span:before{top:0;transform:rotate(45deg)}.sidebar.is-open .menu-toggle span:after{top:0;transform:rotate(-45deg)}.sidebar-menu{border-bottom:1px solid var(--line);background:#0e152d;max-height:calc(100dvh - 65px);padding:12px 22px 20px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 24px 40px #02071699}.sidebar.is-open .sidebar-menu{display:block}.sidebar-intro{display:none}.sidebar-bottom{margin-top:14px}.phase-section{scroll-margin-top:80px}main{padding:0 22px}.topbar{height:60px}.orbit-wrap{display:none}}@media (width<=580px){.topbar{flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;height:75px}.hero p{font-size:13px}.next-step{padding:20px}.toolbar{flex-direction:column}.search-field{width:100%}.filter-group{align-self:flex-start}.phase-head{grid-template-columns:36px 1fr;gap:11px;padding:17px}.phase-glyph{width:36px;height:36px}.phase-name{font-size:16px}.phase-status{text-align:left;grid-column:2}.topic-grid{grid-template-columns:1fr}.topic{flex-basis:100%}.topic-note-toggle,.topic-resources{margin-left:32px}.topic-note-toggle,.topic-resources-toggle{min-height:32px}footer{display:block}footer p+p,footer span{margin-top:6px;display:block}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.toolbar-count{color:var(--muted);margin:0 0 19px;font-size:11px}.phase-section{--phase-color:var(--phase-1);position:relative}.phase-section:nth-child(2){--phase-color:var(--phase-2)}.phase-section:nth-child(3){--phase-color:var(--phase-3)}.phase-section:nth-child(4){--phase-color:var(--phase-4)}.phase-section:nth-child(5){--phase-color:var(--phase-5)}.phase-section:nth-child(6){--phase-color:var(--phase-6)}.phase-head{z-index:1;text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;border:0;position:relative}.phase-head-copy{min-width:0;display:block}.phase-status{color:var(--muted);text-align:right;white-space:nowrap;font-size:12px}.phase-status.is-done{color:var(--cyan);font-weight:700}.phase-status.is-current{color:var(--phase-color);font-weight:700}.phase-section.is-collapsed .phase-head{padding-top:16px;padding-bottom:16px}.phase-section.is-future .phase-head{opacity:.7}.phase-section.is-future .phase-head:hover{opacity:1}.phase-stars{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.phase-section.is-expanded .phase-stars{display:none}.phase-stars i{background:#2e3963;border-radius:50%;width:6px;height:6px}.phase-stars i.is-done{background:var(--cyan);box-shadow:0 0 6px var(--cyan)}.phase-stars i.is-progress{background:color-mix(in srgb, var(--phase-color) 60%, #2e3963)}.phase-stars i.is-next{background:var(--phase-color);box-shadow:0 0 0 3px color-mix(in srgb, var(--phase-color) 25%, transparent)}.map-track[hidden]{display:none}.phase-share{z-index:2;color:var(--cyan);position:absolute;top:12px;right:8px}.phase-share:hover{color:var(--text)}@media (width<=580px){.phase-share{top:4px;right:2px}}.phase-glyph{background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--phase-color) 38%, transparent), color-mix(in srgb, var(--phase-color) 10%, transparent) 70%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--phase-color) 35%, transparent);color:var(--phase-color)}.phase-section.is-done .phase-glyph{box-shadow:inset 0 0 0 1px var(--cyan), 0 0 14px #65e1ec40}.map-track{--row:104px;--amp:130px;--circle:58px;--pad-top:44px;z-index:1;padding:var(--pad-top) clamp(20px, 6vw, 90px) 36px;background:radial-gradient(ellipse 45% 30% at 50% 32%, color-mix(in srgb, var(--phase-color) 13%, transparent), transparent 70%), radial-gradient(ellipse 40% 25% at 50% 75%, #65e1ec0c, transparent 70%);border-radius:28px;margin:0 0 20px;position:relative;overflow:hidden}@media (width<=580px){.map-track{--row:100px;--amp:72px;--circle:50px;--pad-top:38px;padding:var(--pad-top) 14px 28px;border-radius:22px}}.map-path{top:var(--pad-top);width:calc(var(--amp) * 2);height:calc(var(--row) * var(--rows));pointer-events:none;position:absolute;left:50%;overflow:visible;transform:translate(-50%)}.map-path path{vector-effect:non-scaling-stroke;stroke-linecap:round}.map-path-done{stroke:var(--phase-color);stroke-width:3px;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--phase-color) 60%, transparent))}.map-path-future{stroke:#4a5890;stroke-width:2px;stroke-dasharray:1 9}.map-node-row{z-index:1;height:var(--row);position:relative}.map-node{transform:translate(-50%, -50%) translateX(calc(var(--x,0) * var(--amp)));width:var(--circle);height:var(--circle);color:#8d97bb;background:radial-gradient(circle at 35% 30%,#1f2a58,#0b1130 75%);border:1px solid #34406c;border-radius:50%;place-items:center;font:700 15px Space Grotesk,sans-serif;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;position:absolute;top:50%;left:50%;box-shadow:inset 0 -6px 14px #0009,0 8px 22px #02051699}.map-node:hover,.map-node:focus-visible{transform:translate(-50%, -50%) translateX(calc(var(--x,0) * var(--amp))) scale(1.08);border-color:var(--phase-color)}.map-node.is-done{color:#03222a;background:radial-gradient(circle at 35% 30%,#d4fcff,#59d6e2 45%,#17616d);border-color:#a6f3f8;box-shadow:0 0 0 5px #65e1ec1a,0 0 26px #65e1ec66}.map-node.is-progress{color:var(--text)}.map-node.is-next{border-color:color-mix(in srgb, var(--phase-color) 70%, white);background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--phase-color) 55%, white), var(--phase-color) 45%, color-mix(in srgb, var(--phase-color) 35%, #0b1030));color:#120a2e;box-shadow:0 0 0 6px color-mix(in srgb, var(--phase-color) 16%, transparent), 0 0 36px color-mix(in srgb, var(--phase-color) 55%, transparent)}.map-node.is-next:before{content:"";border:1px solid color-mix(in srgb, var(--phase-color) 40%, transparent);pointer-events:none;border-radius:50%;position:absolute;inset:-15px}.map-node.is-next:after{content:"";width:8px;height:8px;transform:rotate(-40deg) translateX(calc(var(--circle) / 2 + 15px));pointer-events:none;background:#fff;border-radius:50%;margin:-4px;animation:8s linear infinite moon;position:absolute;top:50%;left:50%;box-shadow:0 0 10px #fff}@keyframes moon{0%{transform:rotate(0deg) translateX(calc(var(--circle) / 2 + 15px))}to{transform:rotate(360deg) translateX(calc(var(--circle) / 2 + 15px))}}.map-node.has-challenge{box-shadow:inset 0 -6px 14px #0009,0 8px 22px #02051699,0 0 0 3px #0b1130,0 0 0 6px #65e1ecb3}.map-node.is-done.has-challenge{box-shadow:0 0 0 5px #65e1ec1a,0 0 26px #65e1ec66,0 0 0 9px #0b1130,0 0 0 12px #65e1ecb3}.map-node.is-next.has-challenge{box-shadow:0 0 0 6px color-mix(in srgb, var(--phase-color) 16%, transparent), 0 0 36px color-mix(in srgb, var(--phase-color) 55%, transparent), 0 0 0 10px #0b1130, 0 0 0 13px #65e1ecb3}.map-node.is-extension{border-style:dashed}.map-node.is-celebrating{animation:.4s node-pop}@keyframes node-pop{0%,to{transform:translate(-50%, -50%) translateX(calc(var(--x,0) * var(--amp))) scale(1)}50%{transform:translate(-50%, -50%) translateX(calc(var(--x,0) * var(--amp))) scale(1.2)}}.node-glyph{font-size:20px;font-weight:800}.node-tag{white-space:nowrap;background:var(--phase-color);color:#120a2e;box-shadow:0 4px 14px color-mix(in srgb, var(--phase-color) 45%, transparent);border-radius:999px;padding:3px 10px;font:700 11px DM Sans,sans-serif;position:absolute;top:-44px;left:50%;transform:translate(-50%)}.node-ring{background:conic-gradient(var(--phase-color) var(--p), #26305a var(--p));border-radius:50%;place-items:center;width:calc(100% + 2px);height:calc(100% + 2px);display:grid}.node-ring-inner{background:radial-gradient(circle at 35% 30%,#1f2a58,#0b1130 75%);border-radius:50%;width:calc(100% - 8px);height:calc(100% - 8px)}.node-label{--gap:16px;letter-spacing:-.015em;color:#9aa4c8;min-width:0;max-width:220px;font:600 14px/1.3 Space Grotesk,sans-serif;position:absolute;top:50%;transform:translateY(-50%)}.node-label.label-left{right:calc(50% - var(--x,0) * var(--amp) + var(--circle) / 2 + var(--gap));text-align:right}.node-label.label-right{left:calc(50% + var(--x,0) * var(--amp) + var(--circle) / 2 + var(--gap));text-align:left}.node-label.is-done{color:#7fcfd8}.node-label.is-progress{color:var(--text)}.node-label.is-next{--gap:30px;color:var(--text);font-size:17px;font-weight:700}.map-end{z-index:1;border:1px dashed color-mix(in srgb, var(--phase-color) 55%, transparent);width:max-content;color:var(--phase-color);border-radius:999px;margin:18px auto 0;padding:7px 16px;font:600 12px DM Sans,sans-serif;position:relative}@media (width<=580px){.phase-head{grid-template-columns:36px 1fr}.node-label{max-width:130px;font-size:12.5px}.node-label.is-next{--gap:26px;font-size:14px}}#detail-dialog{width:min(500px,100%);max-width:none;height:100dvh;max-height:none;color:var(--text);background:radial-gradient(500px 260px at 100% 0,#a889ff1f,#0000 70%),#0a1030;border:0;border-left:1px solid #a889ff33;margin:0;padding:0;position:fixed;inset:0 0 0 auto;overflow-y:auto;box-shadow:-20px 0 80px #0009}#detail-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050a1ccc}.detail-top{border-bottom:1px solid var(--line);background:radial-gradient(circle at 90% 0,#67539b44,#0000 50%);padding:28px 28px 20px}.detail-close{float:right;border:1px solid var(--line);width:34px;height:34px;color:var(--text);background:#243153;border-radius:8px;font-size:21px;line-height:1}.detail-phase{color:var(--cyan);font:700 11px Space Grotesk}.detail-top h2{letter-spacing:-.045em;margin:20px 0 10px;font-size:30px;line-height:1.1}.detail-top p{color:var(--muted);font-size:13px;line-height:1.6}.detail-progress{align-items:center;gap:12px;margin-top:22px;display:flex}.detail-progress .phase-bar{flex:1}.detail-progress strong{color:var(--cyan);font-size:12px}.detail-main{padding:22px 28px 35px}.detail-main h3{margin:8px 0 13px;font-size:17px}.detail-main .topic-grid{grid-template-columns:1fr;gap:7px}.detail-main .topic-entry{padding:11px;font-size:12px}.detail-main .area-subtitle{margin-top:29px}.detail-note{color:var(--muted);background:#192644;border:1px solid #35476d;border-radius:10px;margin-top:25px;padding:13px;font-size:11px;line-height:1.5}@media (width<=580px){.detail-top,.detail-main{padding-left:20px;padding-right:20px}}.topic-section+.topic-section{border-top:1px solid var(--line);margin-top:28px;padding-top:25px}.topic-section-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.topic-section-head h3{margin:0}.topic-section-head span{color:var(--cyan);font:700 12px Space Grotesk}.topic-section>p{color:var(--muted);margin:7px 0 13px;font-size:11px;line-height:1.5}.topic-section.deepening .topic-entry{border-style:dashed}.challenge-section{background:radial-gradient(360px 160px at 0 0,#a889ff17,#0000 70%),#101a38;border:1px solid #a889ff40;border-radius:14px;padding:16px 18px}.challenge-section.is-done{background:radial-gradient(360px 160px at 0 0,#65e1ec17,#0000 70%),#101a38;border-color:#65e1ec4d}.challenge-section.challenge-section>p.challenge-title{color:var(--text);margin:2px 0 8px;font:700 15px Space Grotesk,sans-serif}.challenge-section.challenge-section>p.challenge-brief{color:var(--muted);margin:0 0 13px;font-size:12px;line-height:1.6}.challenge-criteria{color:var(--text);gap:6px;margin:0 0 13px;padding-left:18px;font-size:12px;line-height:1.5;display:grid}.challenge-locked{color:var(--muted);margin:0 0 13px;font-size:11px}.challenge-actions{align-items:center;gap:14px;display:flex}.challenge-toggle{flex:1;justify-content:center;display:flex}.challenge-toggle.is-done{border-color:var(--cyan);color:var(--cyan);background:#65e1ec14}.essential-steps{gap:7px;margin:0;padding:0;list-style:none;display:grid}.essential-steps li.is-next .topic-entry{border-color:var(--violet);background:color-mix(in srgb, var(--violet) 14%, #10182f)}.step-tag{color:var(--violet);margin-bottom:2px;font:600 12px DM Sans,sans-serif;display:block}.essentials-done{color:#a6f3f8;background:#65e1ec12;border:1px solid #65e1ec4d;border-radius:10px;margin:0;padding:13px;font-size:12px}.steps-more{margin-top:4px;padding-left:2px}.steps-done{margin-top:14px}.steps-done summary{cursor:pointer;color:var(--cyan);font:700 12px Space Grotesk}.steps-done .topic-grid{margin-top:10px}.extras-group summary{cursor:pointer;color:var(--violet);font:700 13px Space Grotesk}.extras-group[open] summary{margin-bottom:4px}.resource-highlight{gap:8px;margin-top:12px;display:grid}.resource-featured{border-color:var(--violet);background:#202c52;padding:16px}.resource-tag{color:var(--violet);margin-bottom:8px;font:600 12px DM Sans,sans-serif;display:block}.resource-featured span{font-size:14px}.resource-tag-next{color:var(--muted);font-weight:600}.resource-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.resource-compact{min-width:0}.resource-compact span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}@media (width<=580px){.resource-list{grid-template-columns:1fr}}.topic-grid .topic-entry.note-open{grid-column:1/-1}.topic-note-toggle,.topic-resources-toggle{border:1px solid var(--line);color:color-mix(in srgb, var(--text) 80%, transparent);white-space:nowrap;background:0 0;border-radius:999px;flex:none;align-items:center;gap:5px;padding:4px 10px;font:12px DM Sans,sans-serif;display:inline-flex}.topic-note-toggle:hover,.topic-note-toggle:focus-visible,.topic-resources-toggle:hover,.topic-resources-toggle:focus-visible{border-color:var(--violet);color:var(--violet)}.topic-note-toggle.has-note{background:#65e1ec14}.note-dot{background:var(--muted);border-radius:50%;flex:none;width:6px;height:6px;display:inline-block}.topic-note-toggle .note-dot{background:var(--cyan)}.topic-note-open{width:100%;margin-top:2px}.topic-note-textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:70px;color:var(--text);background:#0b1130;border-radius:10px;padding:10px 12px;font:13px/1.5 DM Sans,sans-serif}.topic-note-textarea:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.topic-note-footer{color:var(--muted);justify-content:space-between;align-items:center;margin-top:4px;font-size:11px;display:flex}.topic-resources{flex:none}.topic-resources.is-open{flex:100%}.topic-resources .resource-list{grid-template-columns:1fr;width:100%;margin-top:8px}#share-dialog{width:min(560px,100% - 32px);max-width:none;height:max-content;max-height:min(90vh,780px);color:var(--text);background:radial-gradient(500px 260px at 100% 0,#a889ff1f,#0000 70%),#0a1030;border:1px solid #a889ff33;border-radius:20px;margin:auto;padding:0;position:fixed;inset:0;overflow-y:auto;box-shadow:0 30px 80px #000a}#share-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050a1ccc}.share-top{padding:22px 24px 0}.share-top h2{margin:16px 0 4px;font-size:20px}.share-body{gap:22px;padding:16px 24px 26px;display:flex}.share-preview{flex:none;place-items:start center;display:grid}.share-preview canvas{border-radius:14px;box-shadow:0 12px 30px #0007}.share-controls{flex:1;align-content:start;gap:12px;min-width:0;display:grid}.share-format{gap:8px;display:flex}.share-format .ghost-button{text-align:center;flex:1;padding:10px 8px;font-size:12px}.share-format .ghost-button.is-active{border-color:var(--cyan);color:var(--cyan);background:#65e1ec14}.share-name-field{color:var(--muted);gap:6px;font-size:12px;display:grid}.share-name-field input{border:1px solid var(--line);color:var(--text);background:#131b3b;border-radius:10px;padding:10px 12px;font-size:13px}.share-main-action{border-color:var(--violet);justify-content:center;width:100%;display:flex}.share-caption-preview{border:1px solid var(--line);color:var(--muted);background:#101a38;border-radius:10px;margin:4px 0 0;padding:12px;font-size:12px;line-height:1.6}@media (width<=580px){.share-body{flex-direction:column}.share-preview{justify-self:center}}.library-page{max-width:1180px;margin:0 auto;position:relative}.library-sky{z-index:-1;pointer-events:none;background:var(--sky-stars), radial-gradient(900px 520px at 18% -5%, #a889ff26, transparent 70%), radial-gradient(700px 420px at 88% 105%, #65e1ec12, transparent 70%);background-size:var(--sky-size), auto, auto;position:fixed;inset:0}.library-sky svg{width:100%;height:100%}.atlas-grid path{fill:none;stroke:var(--muted);stroke-width:1px;opacity:.14}.library-top{padding:40px 0 20px;position:relative;overflow:hidden}.library-header-figures{z-index:-1;pointer-events:none;position:absolute;inset:0}.study-figure{width:64px;height:50px;position:absolute}.study-figure line{stroke:var(--muted);stroke-width:1px;opacity:.18}.study-figure circle{fill:var(--muted);opacity:.5}.figure-book{top:2px;right:2px}.figure-lamp{top:2px;left:2px}.resource-body{color:var(--phase-color,var(--muted));transition:filter .15s,color .2s;display:inline-flex;position:relative}.resource-body.is-read{color:var(--cyan);filter:drop-shadow(0 0 5px color-mix(in srgb, var(--cyan) 65%, transparent))}.resource-body .body-ring,.resource-body .body-orbit{fill:none;stroke:currentColor}.resource-body .body-ring{stroke-width:1.6px}.resource-body .body-ring-back{opacity:.45}.resource-body .body-orbit{stroke-width:1.4px;stroke-dasharray:2 4;opacity:.55}.filter .resource-body .body-orbit{stroke-width:3.5px;stroke-dasharray:none;opacity:.7}.filter .resource-body .body-ring{stroke-width:3.5px}.resource-body .body-core,.resource-body .body-orbit-point,.resource-body .body-tail{fill:currentColor}.resource-body.is-unread .body-core{fill-opacity:.85}.resource-body .body-tail-far{opacity:.25}.resource-body .body-tail-near{opacity:.6}.resource-body .body-spark{fill:#fffc}.resource-body.is-featured:before{content:"";background:radial-gradient(circle, color-mix(in srgb, currentColor 35%, transparent), transparent 70%);z-index:-1;border-radius:50%;position:absolute;inset:-6px}.library-top-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.library-top h1{letter-spacing:-.045em;margin:0 0 8px;font-size:clamp(28px,3vw,40px)}.library-top-head>div:first-child p{color:var(--muted);max-width:52ch;margin:0;font-size:14px}.library-read-total{min-width:220px;color:var(--muted);font-size:12px}.library-read-total span{white-space:nowrap;margin-bottom:6px;display:block}.library-read-total .phase-bar{width:100%}.library-filter-bar{z-index:5;--bleed:clamp(22px, 5vw, 76px);margin-inline:calc(-1 * var(--bleed));padding:14px var(--bleed);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex;position:sticky;top:0}.library-filter-bar .search-field{width:min(300px,100%)}.library-chip-row{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.library-more-filters summary{cursor:pointer;color:var(--muted);border:1px solid var(--line);border-radius:10px;padding:8px 14px;font-size:12px;list-style:none}.library-more-filters summary::-webkit-details-marker{display:none}.library-more-filters summary:hover,.library-more-filters[open] summary{color:var(--text);border-color:#6174a3}.library-more-filters-body{flex-wrap:wrap;gap:8px;margin-top:8px;display:none}.library-more-filters[open] .library-more-filters-body{display:flex}.library-clear{padding:8px 4px}.library-match-count{width:100%;margin:0}@media (width>=821px){.library-more-filters summary{display:none}.library-more-filters-body{display:flex!important}.library-match-count{width:auto;margin-left:auto}}.library-phase-index{flex-wrap:wrap;gap:8px 10px;margin:0 0 8px -13px;padding:16px 0;display:flex}.library-chip-row{flex:420px;min-width:0;max-width:100%}.library-chip-row .filter-group{scrollbar-width:none;min-width:0;max-width:100%;overflow-x:auto}@media (width<=580px){.library-phase-index{margin-left:0}}.library-phase-dot{color:var(--muted);white-space:nowrap;background:0 0;border:0;flex:none;align-items:center;gap:7px;padding:4px 2px;font-size:12px;display:flex}.library-phase-dot span{background:var(--phase-color);border-radius:50%;width:8px;height:8px}.library-phase-dot:hover:not(:disabled){color:var(--text)}.library-phase-dot:disabled{opacity:.35;cursor:default}.library-phase-dot{border:1px solid #0000;border-radius:999px;padding:6px 12px}.library-phase-dot small{color:var(--muted);opacity:.8;font-size:11px}.library-phase-dot[aria-current=page]{color:var(--text);border-color:color-mix(in srgb, var(--phase-color) 55%, transparent);background:color-mix(in srgb, var(--phase-color) 12%, transparent)}.library-pager{justify-content:space-between;gap:12px;padding-top:8px;display:flex}.library-pager .ghost-button{text-align:left;gap:2px;min-width:0;padding:12px 18px;display:grid}.library-pager .ghost-button.is-next{text-align:right;margin-left:auto}.library-pager small{color:var(--muted);font-size:11px;font-weight:500}@media (width<=580px){.library-pager{flex-direction:column}.library-pager .ghost-button.is-next{margin-left:0}}.library-empty{text-align:center;color:var(--muted);justify-items:center;gap:14px;padding:60px 20px;display:grid}.library-empty-astro{opacity:.4}.library-empty p{margin:0;font-size:14px}.library-main{gap:34px;padding:28px 0 60px;display:grid}.library-phase{--phase-color:var(--violet);min-width:0;margin-bottom:40px;scroll-margin-top:76px}.library-phase h3{color:var(--phase-color);margin:0 0 22px;padding-left:14px;font:700 15px Space Grotesk,sans-serif;position:relative}.library-phase h3:before{content:"";background:var(--phase-color);border-radius:2px;width:2px;position:absolute;top:1px;bottom:1px;left:0}.observatory-area+.observatory-area{margin-top:32px}.observatory-area-head{align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.observatory-area-head h4{flex:1;min-width:0;margin:0;font-size:14px}.observatory-area-count{color:var(--muted);white-space:nowrap;font-size:11px}.constellation-scroll{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}.constellation{--card-w:192px;--gap:12px;--card-offset:50px;--astro-lift:26px;gap:var(--gap);scroll-snap-type:x proximity;scrollbar-width:none;margin:0;padding:8px 4px 10px;list-style:none;display:flex;position:relative;overflow-x:auto}.constellation:hover,.constellation:focus-within{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--phase-color) 50%, transparent) transparent}.constellation::-webkit-scrollbar{height:4px}.constellation::-webkit-scrollbar-track{background:0 0}.constellation::-webkit-scrollbar-thumb{background:0 0}.constellation:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--phase-color) 40%, transparent);border-radius:99px}.constellation:focus-within::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--phase-color) 40%, transparent);border-radius:99px}.constellation-item{width:var(--card-w);scroll-snap-align:start;flex:none;position:relative}.constellation-item:not(:last-child):after{content:"";top:calc(var(--card-offset) - var(--astro-lift));width:calc(100% + var(--gap));background:color-mix(in srgb, var(--phase-color) 40%, transparent);height:1px;position:absolute;left:50%}.constellation-item.is-read:has(+.is-read):after{background:var(--cyan);height:2px;box-shadow:0 0 6px color-mix(in srgb, var(--cyan) 70%, transparent);margin-top:-.5px}.observatory-astro{top:calc(-1 * var(--astro-lift));z-index:2;background:var(--bg);border-radius:50%;place-items:center;padding:3px;display:grid;position:absolute;left:50%;transform:translate(-50%,-50%)}.observatory-card{height:calc(100% - var(--card-offset));margin-top:var(--card-offset);border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0d1430f0;border-radius:16px;flex-direction:column;padding:18px 14px 14px;transition:border-color .15s;display:flex;position:relative}.observatory-card.is-featured{border-color:color-mix(in srgb, var(--phase-color) 55%, transparent)}.observatory-card.is-read{border-color:color-mix(in srgb, var(--cyan) 45%, transparent)}.observatory-card:hover,.observatory-card:focus-within{border-color:color-mix(in srgb, var(--phase-color) 75%, transparent)}.observatory-card:hover .resource-body,.observatory-card:focus-within .resource-body{filter:brightness(1.3)}.observatory-card .resource-tag{margin:0 0 8px}.observatory-card-link{z-index:1;color:inherit;text-decoration:none;display:block;position:relative}.observatory-card-link:after{content:"";position:absolute;inset:0}.observatory-card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font:600 15px/1.32 Space Grotesk,sans-serif;display:-webkit-box;overflow:hidden}.observatory-card .resource-why{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:8px 0 0;display:-webkit-box;overflow:hidden}.observatory-card-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:12px;display:flex}.observatory-card-foot small{color:var(--muted);font-size:10.5px;line-height:1.35}.observatory-read-toggle{z-index:1;border:1.5px solid var(--line);background:0 0;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid;position:relative}.observatory-read-toggle span{background:0 0;border-radius:50%;width:10px;height:10px;transition:background .2s}.observatory-read-toggle[aria-pressed=true]{border-color:var(--cyan)}.observatory-read-toggle[aria-pressed=true] span{background:var(--cyan);box-shadow:0 0 6px var(--cyan)}@media (width<=1100px){.constellation{--card-w:170px}}@media (width<=820px){.constellation-scroll{-webkit-mask-image:none;mask-image:none}.constellation{--gap:28px;flex-direction:column;padding:6px 0 6px 34px;overflow:visible}.constellation-item{width:100%}.constellation{--card-offset:0px}.constellation-item:not(:last-child):after{width:1px;height:calc(100% + var(--gap));top:24px;left:-20px}.constellation-item.is-read:has(+.is-read):after{width:2px;height:calc(100% + var(--gap));margin:0 0 0 -.5px}.observatory-astro{top:24px;left:-20px;transform:translate(-50%,-50%)}}@media (width<=580px){.observatory-area-head{flex-wrap:wrap}.observatory-card-title{font-size:14px}.library-page{margin:0 -6px;padding:0 6px}}
