:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0a12;--bg-elevated:#10101c;--surface:#14141f;--surface-2:#1b1b28;--surface-glass:#ffffff0a;--border:#ffffff17;--border-strong:#ffffff2e;--text:#ececf1;--text-muted:#a2a2b6;--text-faint:#e7e5fd;--overlay:#04040ab8;--success:#34d399;--success-soft:#34d39924;--warning:#fbbf24;--warning-soft:#fbbf2426;--danger:#fb7185;--danger-soft:#fb718526;--info:#38bdf8;--info-soft:#38bdf826;--font-stack:var(--font-sans), "Segoe UI", system-ui, sans-serif;--font-stack-heading:var(--font-heading), var(--font-stack);--text-2xs:.8125rem;--text-xs:.875rem;--text-sm:1rem;--text-base:1.125rem;--text-lg:1.25rem;--text-xl:1.625rem;--text-2xl:2rem;--text-3xl:clamp(2.5rem, 1.8rem + 2.6vw, 4.25rem);--leading-tight:1.2;--leading-snug:1.4;--leading-normal:1.6;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.04em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.5rem;--space-10:3rem;--space-12:4rem;--space-16:6rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-pill:999px;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 20px #00000073;--shadow-lg:0 24px 64px #0000008c;--ease:cubic-bezier(.22, 1, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.32s;--container:1200px;--container-wide:1320px;--container-ultra-wide:1920px;--container-inline:clamp(1rem, 4vw, 2rem);--z-header:100;--z-dropdown:200;--z-overlay:900;--z-modal:1000;--z-toast:1100;--vt-exit:.18s;--vt-enter:.26s;--vt-move:.36s}:root,[data-direction=tech]{--accent:#7165f6;--accent-strong:#7165f6;--accent-contrast:#111;--accent-soft:#7165f624;--glow:#7165f652;--accent-gradient:linear-gradient(135deg, #4e3ff4, #7165f6);--bg-glow:radial-gradient(1200px 620px at 8% -12%, #7165f638, transparent 60%), radial-gradient(1000px 560px at 96% 4%, #4e3ff429, transparent 55%), radial-gradient(760px 420px at 50% 108%, #7165f61a, transparent 50%);--shadow-glow:0 0 0 1px var(--accent-soft), 0 10px 40px var(--glow);--background-glow:var(--bg-glow);--primary:var(--accent);--accent-hover:var(--accent-strong);--accent-glow:var(--glow);--hero-gradient:linear-gradient(145deg, var(--accent-strong), var(--accent) 55%, var(--accent-strong))}[data-direction=data]{--accent:#ec6164;--accent-strong:#ec6164;--accent-contrast:#111;--accent-soft:#ec616426;--glow:#ec616452;--accent-gradient:linear-gradient(135deg, #e73a3d, #ec6164);--bg-glow:radial-gradient(1200px 620px at 8% -12%, #ec616438, transparent 60%), radial-gradient(1000px 560px at 96% 4%, #e73a3d29, transparent 55%), radial-gradient(760px 420px at 50% 108%, #ec61641a, transparent 50%);--shadow-glow:0 0 0 1px var(--accent-soft), 0 10px 40px var(--glow);--background-glow:var(--bg-glow);--primary:var(--accent);--accent-hover:var(--accent-strong);--accent-glow:var(--glow);--hero-gradient:linear-gradient(145deg, var(--accent-strong), var(--accent) 55%, var(--accent-strong))}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#d5d7e1;--bg-elevated:#f1f2f6;--surface:#ecedf2;--surface-2:#dcdee8;--surface-glass:#f1f2f6b8;--border:#c2c4d2;--border-strong:#a6a9bb;--text:#2b2b3e;--text-muted:#4f5068;--text-faint:#595a72;--overlay:#14142066;--success:#0d9488;--success-soft:#e3f4f1;--warning:#b45309;--warning-soft:#fbefd6;--danger:#d63a54;--danger-soft:#fae7ea;--info:#0284c7;--info-soft:#dceffb;--shadow-sm:0 1px 3px #19192d17;--shadow-md:0 8px 26px #19192d24;--shadow-lg:0 26px 62px #19192d33}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#d5d7e1;--bg-elevated:#f1f2f6;--surface:#ecedf2;--surface-2:#dcdee8;--surface-glass:#f1f2f6b8;--border:#c2c4d2;--border-strong:#a6a9bb;--text:#2b2b3e;--text-muted:#4f5068;--text-faint:#e7e5fd;--overlay:#14142066;--success:#0d9488;--success-soft:#e3f4f1;--warning:#b45309;--warning-soft:#fbefd6;--danger:#d63a54;--danger-soft:#fae7ea;--info:#0284c7;--info-soft:#dceffb;--shadow-sm:0 1px 3px #19192d17;--shadow-md:0 8px 26px #19192d24;--shadow-lg:0 26px 62px #19192d33}}:root{--background:var(--bg);--foreground:var(--text);--muted-foreground:var(--text-muted);--surface-elevated:var(--bg-elevated);--muted:var(--surface-2);--card:var(--surface);--radius:var(--radius-lg);--shadow:var(--shadow-md);--shadow-hover:var(--shadow-lg);--page-inline:var(--container-inline)}
html{scroll-behavior:smooth;height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background-color:var(--background);background-image:var(--background-glow);font-family:var(--font-stack);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}::selection{background:var(--accent);color:var(--accent-contrast)}a{color:inherit;text-decoration:none}h1,h2,h3{letter-spacing:-.02em;color:var(--foreground);font-weight:700;line-height:1.2}h1{font-size:clamp(2.25rem,3.4vw,2.75rem)}h2{margin:2rem 0 .75rem;font-size:1.65rem}h3{font-size:1.35rem}p{line-height:1.65}button,input,textarea,select{font:inherit;color:inherit}input,textarea,select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;transition:border-color .15s var(--ease), box-shadow .15s var(--ease), background .15s var(--ease);padding:.65rem .9rem}input:hover,textarea:hover,select:hover{border-color:var(--border-strong)}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}textarea{resize:vertical;min-height:5rem}button,.button{cursor:pointer;border-radius:var(--radius-pill);background:var(--accent-gradient);color:var(--accent-contrast);box-shadow:none;transition:opacity .15s var(--ease), transform .15s var(--ease), background .15s var(--ease), border-color .15s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1.45rem;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}button:hover,.button:hover{opacity:.95;transform:translateY(-1px)}button:active,.button:active{transform:translateY(0)}button:disabled,.button:disabled{opacity:.45;cursor:not-allowed;transform:none}button:focus-visible,.button:focus-visible,a.button--ghost:focus-visible,a.button--danger:focus-visible,a.button--primary:focus-visible,a.button--small:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.button--primary{background:var(--accent-gradient);color:var(--accent-contrast);border-color:#0000}.button--ghost,a.button--ghost{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--foreground);box-shadow:none;transition:background .15s var(--ease), border-color .15s var(--ease), transform .15s var(--ease);justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1.45rem;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}.button--ghost:hover,a.button--ghost:hover{background:var(--muted);border-color:var(--border-strong);opacity:1;box-shadow:none;transform:translateY(-1px)}.button--danger,a.button--danger{border-radius:var(--radius-pill);background:var(--danger);color:#fff;box-shadow:none;transition:background .15s var(--ease), transform .15s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1.45rem;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}.button--danger:hover,a.button--danger:hover{background:color-mix(in oklab, var(--danger) 82%, black);opacity:1;transform:translateY(-1px)}.button--small,a.button--small{padding:.4rem .95rem;font-size:.85rem}form{flex-direction:column;gap:.75rem;display:flex}form label{color:var(--foreground);flex-direction:column;gap:.35rem;font-size:.875rem;font-weight:500;display:flex}[role=alert]{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius-sm);padding:.5rem .75rem;font-size:.875rem}table{border-collapse:collapse;width:100%}table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.75rem .6rem}table tr:last-child td{border-bottom:none}.container{width:100%;max-width:var(--container-wide);padding-inline:var(--container-inline);margin-inline:auto}.tag,.chip{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--muted);color:var(--accent-hover);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:.3rem;padding:.3rem .85rem;font-size:.78rem;font-weight:600;line-height:1.3;display:inline-flex}.chip--accent{background:var(--accent-soft);border-color:var(--border-strong);color:var(--foreground)}.chip--solid{background:var(--accent);color:var(--accent-contrast);border-color:#0000}.chip--soft{background:var(--accent-soft);color:var(--foreground);border-color:#0000}.block{background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5)}.block+.block{margin-top:var(--space-5)}.group{gap:var(--space-4);flex-direction:column;display:flex}.group__head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.group__title{color:var(--foreground);letter-spacing:-.02em;margin:0;font-size:1.1rem;font-weight:700}.group__hint{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.85rem;font-weight:400}.subgroup{gap:var(--space-3);padding:var(--space-4);background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;display:flex}.subgroup__title{color:var(--accent-hover);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.88rem;font-weight:700}.chip-row{flex-wrap:wrap;gap:.4rem;display:flex}input::placeholder,textarea::placeholder{color:var(--muted-foreground);opacity:.7}input[type=file]{cursor:pointer;background:var(--muted);border-style:dashed;padding:.5rem}input[type=file]:hover{border-color:var(--accent);background:var(--accent-soft)}.masonry{columns:2 300px;column-gap:1.25rem}.masonry>*{break-inside:avoid;margin-bottom:1.25rem}@media (max-width:800px){.masonry{columns:1}}::view-transition{background-color:var(--background)}::view-transition-old(.page-fade){animation:var(--vt-exit) ease-out both vt-fade-out}::view-transition-new(.page-fade){animation:var(--vt-enter) ease-out var(--vt-exit) both vt-fade-in}::view-transition-old(.nav-forward){animation:var(--vt-exit) ease-out both vt-fade-out}::view-transition-old(.nav-back){animation:var(--vt-exit) ease-out both vt-fade-out}::view-transition-new(.nav-forward){--slide-x:28px;animation:var(--vt-enter) ease-out both vt-fade-in, var(--vt-move) var(--ease) both vt-slide-x}::view-transition-new(.nav-back){--slide-x:-28px;animation:var(--vt-enter) ease-out both vt-fade-in, var(--vt-move) var(--ease) both vt-slide-x}::view-transition-group(.morph){animation-duration:var(--vt-move);animation-timing-function:var(--ease);z-index:2;background:0 0;border-radius:1.15rem;overflow:clip}::view-transition-image-pair(.morph){isolation:isolate;border-radius:inherit;background:0 0;overflow:clip}::view-transition-old(.morph){object-fit:cover;border-radius:inherit;mix-blend-mode:normal;background:0 0;width:100%;height:100%;animation:none;overflow:clip}::view-transition-new(.morph){object-fit:cover;border-radius:inherit;mix-blend-mode:normal;background:0 0;width:100%;height:100%;animation:none;overflow:clip}::view-transition-old(.morph):only-child{animation:var(--vt-exit) ease-out both vt-fade-out}::view-transition-new(.morph):only-child{animation:var(--vt-enter) ease-out both vt-fade-in}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}@keyframes vt-slide-x{0%{transform:translateX(var(--slide-x,28px))}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}::view-transition-old(root){animation:none}::view-transition-new(root){animation:.65s cubic-bezier(.34,1.24,.64,1) both theme-reveal}@keyframes theme-reveal{0%{clip-path:circle(0px at var(--theme-reveal-x,50%) var(--theme-reveal-y,50%))}to{clip-path:circle(var(--theme-reveal-r,150%) at var(--theme-reveal-x,50%) var(--theme-reveal-y,50%))}}.authShell{flex-direction:column;min-height:100dvh;display:flex}body.dir-tech{--direction-bg:url(/img/cosmo-tech/bg.webp)}body.dir-data{--direction-bg:url(/img/cosmo-data/bg.webp)}
