.session-controls{position:relative;display:flex;align-items:center;gap:.4rem}.login-link{font-size:.8rem;color:#bdc7d1;border:1px solid var(--line);border-radius:.65rem;padding:.55rem .75rem}.launcher-button,.avatar-button{display:grid;place-items:center;width:2.3rem;height:2.3rem;border:1px solid var(--line);border-radius:.7rem;background:#ffffff0a;cursor:pointer}.launcher-button span{font-size:1.35rem;line-height:1}.avatar-button{border-radius:50%;overflow:hidden;padding:0}.avatar-button img{width:100%;height:100%;object-fit:cover}.launcher{position:absolute;right:0;top:3rem;width:min(21rem,calc(100vw - 2rem));padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#101923;box-shadow:0 20px 60px #0006}.launcher-title{display:flex;justify-content:space-between;align-items:baseline;padding:.25rem .3rem 1rem}.launcher-title small{color:var(--muted)}.app-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.app-item{display:flex;min-height:5.8rem;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;border:0;border-radius:.8rem;background:transparent;color:#dbe3ea;font-size:.75rem;cursor:pointer}.app-item:hover{background:#7dd3fc17}.app-item span{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid var(--line);border-radius:.75rem;color:var(--ice);font-size:1.2rem}.logout{width:100%;margin-top:.7rem;padding:.65rem;border:1px solid var(--line);border-radius:.65rem;background:transparent;color:#fda4af;cursor:pointer}.site-header[data-astro-cid-76hs5t25]{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line);background:#0a1017d4;backdrop-filter:blur(18px)}.header-inner[data-astro-cid-76hs5t25]{height:4.5rem;display:flex;align-items:center;gap:2rem}.brand[data-astro-cid-76hs5t25]{display:flex;align-items:center;gap:.65rem;font-size:.78rem;letter-spacing:.18em;font-weight:900}.brand-mark[data-astro-cid-76hs5t25]{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--line);border-radius:50%;color:var(--ice)}.desktop-nav[data-astro-cid-76hs5t25]{display:flex;align-items:center;gap:1.45rem;margin-left:auto}.desktop-nav[data-astro-cid-76hs5t25] a[data-astro-cid-76hs5t25]{position:relative;color:#aeb9c4;font-size:.86rem}.desktop-nav[data-astro-cid-76hs5t25] a[data-astro-cid-76hs5t25]:hover,.desktop-nav[data-astro-cid-76hs5t25] a[data-astro-cid-76hs5t25][aria-current=page]{color:var(--paper)}.desktop-nav[data-astro-cid-76hs5t25] a[data-astro-cid-76hs5t25][aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:-.85rem;height:2px;background:var(--ice)}.header-actions[data-astro-cid-76hs5t25]{display:flex;align-items:center;gap:.5rem}.mobile-toggle[data-astro-cid-76hs5t25]{display:none;border:0;background:transparent;font-size:1.25rem}.mobile-nav[data-astro-cid-76hs5t25]{padding:.5rem 0 1rem;display:grid;gap:.2rem}.mobile-nav[data-astro-cid-76hs5t25] a[data-astro-cid-76hs5t25]{padding:.8rem;border-radius:.6rem;color:#bdc7d1}.mobile-nav[data-astro-cid-76hs5t25] a[data-astro-cid-76hs5t25]:hover{background:#ffffff0d}@media(max-width:800px){.desktop-nav[data-astro-cid-76hs5t25]{display:none}.header-actions[data-astro-cid-76hs5t25]{margin-left:auto}.mobile-toggle[data-astro-cid-76hs5t25]{display:block}}footer[data-astro-cid-rxzjtbnh]{border-top:1px solid var(--line);padding:3rem 0;color:#9ca9b6}.footer-inner[data-astro-cid-rxzjtbnh]{display:flex;justify-content:space-between;gap:2rem}.footer-inner[data-astro-cid-rxzjtbnh] strong[data-astro-cid-rxzjtbnh]{color:var(--paper);letter-spacing:.08em}.footer-inner[data-astro-cid-rxzjtbnh] p[data-astro-cid-rxzjtbnh]{margin:.55rem 0 0}.footer-meta[data-astro-cid-rxzjtbnh]{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;font-size:.82rem}@media(max-width:650px){.footer-inner[data-astro-cid-rxzjtbnh]{flex-direction:column}.footer-meta[data-astro-cid-rxzjtbnh]{align-items:flex-start}}.music-player[data-astro-cid-nuxxkkcb]{position:fixed;right:1rem;bottom:1rem;z-index:30;display:flex;align-items:center;gap:.7rem;padding:.65rem .8rem;border:1px solid var(--line);border-radius:1rem;background:#0a1017e6;backdrop-filter:blur(14px);box-shadow:0 14px 35px #00000047}.music-player[data-astro-cid-nuxxkkcb] button[data-astro-cid-nuxxkkcb]{width:2.25rem;height:2.25rem;border:1px solid var(--line);border-radius:50%;background:#ffffff0d;cursor:pointer}.music-player[data-astro-cid-nuxxkkcb] div[data-astro-cid-nuxxkkcb]{display:flex;flex-direction:column;min-width:8.5rem}.music-player[data-astro-cid-nuxxkkcb] strong[data-astro-cid-nuxxkkcb]{font-size:.75rem}.music-player[data-astro-cid-nuxxkkcb] span[data-astro-cid-nuxxkkcb]{font-size:.68rem;color:var(--muted);margin-top:.15rem}@media(max-width:560px){.music-player[data-astro-cid-nuxxkkcb] div[data-astro-cid-nuxxkkcb]{display:none}.music-player[data-astro-cid-nuxxkkcb]{border-radius:50%;padding:.35rem}}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.grid{display:grid}.hidden{display:none}}:root{color-scheme:dark;--ink:#0a1017;--ink-soft:#101923;--paper:#f4f0e8;--muted:#9ca9b6;--line:#ffffff1c;--ice:#7dd3fc;--ice-strong:#38bdf8;--amber:#e6a85c;--danger:#fb7185;--success:#6ee7b7;background:var(--ink);color:var(--paper);font-family:Manrope,Inter,PingFang TC,Noto Sans TC,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{background:radial-gradient(circle at 80% -10%,#38bdf81c,transparent 30rem),radial-gradient(circle at 10% 40%,#e6a85c0f,transparent 26rem),var(--ink);min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}img{max-width:100%}::selection{background:#7dd3fc47}:focus-visible{outline:2px solid var(--ice);outline-offset:3px}.shell{width:min(1180px,100% - 2rem);margin-inline:auto}.page{min-height:70vh;padding:5rem 0 7rem}.eyebrow{color:var(--ice);letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;font-weight:800}.display{letter-spacing:-.065em;max-width:16ch;margin:.75rem 0 1rem;font-size:clamp(2.65rem,8vw,6.7rem);font-weight:700;line-height:.94}.lede{color:#bcc6d0;max-width:66ch;font-size:clamp(1rem,2vw,1.25rem);line-height:1.75}.divider{background:var(--line);height:1px;margin:3.5rem 0}.grid{gap:1rem;display:grid}.card{border:1px solid var(--line);background:#101923bd;border-radius:1.25rem;box-shadow:0 18px 45px #00000024}.button{border:1px solid var(--line);cursor:pointer;background:#ffffff0b;border-radius:.8rem;justify-content:center;align-items:center;gap:.5rem;min-height:2.75rem;padding:.7rem 1rem;transition:all .2s;display:inline-flex}.button:hover{background:#7dd3fc1a;border-color:#7dd3fc8c;transform:translateY(-1px)}.button.primary{background:var(--paper);color:var(--ink);border-color:#0000;font-weight:800}.button.danger{color:#fecdd3;border-color:#fb718559}.muted{color:var(--muted)}.mono{font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace}.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}@media(max-width:700px){.page{padding-top:3.5rem}.shell{width:min(100% - 1.25rem,1180px)}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
