:root,[data-theme=dark]{--bg-deep:#121212;--bg-surface:#2a2d37;--bg-elevated:#334756;--bg-active:#334756;--border:#ffffff0f;--text:#c8ccd4;--text-muted:#8b909c;--text-bright:#fff;--accent:#e8eaed;--accent-dim:#ffffff14;--hover-wash:#ffffff0a;--btn-primary-hover:#d8dce3;--shadow-dropdown:0 12px 32px #0006;--shadow-modal:0 24px 64px #00000080;--overlay:#000000b3;--overlay-soft:#00000080;--danger-hover:#f0a0a0;--focus-ring:#ffffff59;--font-display:"Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--radius:12px;--radius-lg:16px;--radius-pill:999px;--max-width:1120px;--header-height:64px;--sidebar-width:220px}[data-theme=light]{--bg-deep:#eef0f3;--bg-surface:#fff;--bg-elevated:#e4e7ec;--bg-active:#d5dae3;--border:#12141a1a;--text:#4a5160;--text-muted:#6b7380;--text-bright:#12141a;--accent:#12141a;--accent-dim:#12141a0f;--hover-wash:#12141a0a;--btn-primary-hover:#2a2f3a;--shadow-dropdown:0 12px 32px #12141a1f;--shadow-modal:0 24px 64px #12141a2e;--overlay:#12141a73;--overlay-soft:#12141a59;--danger-hover:#b42318;--focus-ring:#12141a59}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100svh;font-family:var(--font-body);color:var(--text);background:var(--bg-deep);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6;transition:background .2s,color .2s}#root{min-height:100svh}h1,h2,h3{font-family:var(--font-display);color:var(--text-bright);margin:0;line-height:1.15}h1{letter-spacing:-.02em;font-size:clamp(2rem,5vw,3.25rem);font-weight:700}h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:700}h3{font-size:1.125rem;font-weight:600}p{margin:0}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}input{font:inherit}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.public-header{z-index:2;height:var(--header-height);justify-content:space-between;align-items:center;padding:0 clamp(1.25rem,4vw,2.5rem);display:flex;position:relative}.public-brand{letter-spacing:.12em;text-transform:uppercase;color:var(--text-bright);text-shadow:0 1px 2px color-mix(in srgb, var(--bg-deep) 70%, transparent), 0 0 28px color-mix(in srgb, var(--bg-deep) 55%, transparent);font-size:.9375rem;font-weight:700}.public-header-actions{background:color-mix(in srgb, var(--bg-deep) 48%, transparent);border:1px solid color-mix(in srgb, var(--text-bright) 12%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.15);backdrop-filter:blur(14px)saturate(1.15);border-radius:999px;align-items:center;gap:.5rem;padding:.35rem;display:flex;box-shadow:0 10px 28px #00000038}.public-theme-toggle{border:1px solid color-mix(in srgb, var(--text-bright) 14%, transparent);background:color-mix(in srgb, var(--bg-surface) 70%, transparent);width:2.25rem;height:2.25rem;color:var(--text-bright);border-radius:999px;place-items:center;padding:0;transition:background .2s,border-color .2s,color .2s,transform .15s;display:inline-grid}.public-theme-toggle:hover{background:color-mix(in srgb, var(--bg-elevated,var(--bg-surface)) 85%, transparent);border-color:color-mix(in srgb, var(--text-bright) 26%, transparent);transform:translateY(-1px)}.public-theme-toggle:focus-visible{outline:2px solid color-mix(in srgb, var(--text-bright) 55%, transparent);outline-offset:2px}.public-shell .btn-ghost{color:color-mix(in srgb, var(--text-bright) 88%, transparent)}.public-shell .btn-ghost:hover:not(:disabled){color:var(--text-bright);background:color-mix(in srgb, var(--text-bright) 8%, transparent)}.public-shell .btn-secondary{background:color-mix(in srgb, var(--bg-surface) 72%, transparent);border-color:color-mix(in srgb, var(--text-bright) 16%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 22px #0000002e}.public-shell .btn-primary{box-shadow:0 8px 24px #00000047, 0 0 0 1px color-mix(in srgb, var(--text-bright) 8%, transparent)}@media (width<=640px){.public-header{gap:.75rem;padding:0 .9rem}.public-brand{letter-spacing:.1em;font-size:.8125rem}.public-header-actions{flex-shrink:0;gap:.28rem;padding:.26rem}.public-header-actions .btn-sm{padding:.45rem .7rem}}@media (width<=520px){.public-header-login{display:none}}@media (prefers-reduced-transparency:reduce){.public-header-actions,.public-shell .btn-secondary{-webkit-backdrop-filter:none;backdrop-filter:none}}.scroll-stack{z-index:1;width:100%;position:relative}.scroll-stack-pin{perspective:1400px;flex-direction:column;justify-content:center;align-items:center;height:100svh;padding:4.25rem 1.25rem 3.25rem;display:flex;position:sticky;top:0;overflow:hidden}.scroll-stack-stage{width:min(100%, var(--stack-card-width,880px));height:calc(var(--stack-card-height,.68) * 100svh);max-height:36rem;position:relative}.scroll-stack-card{border-radius:var(--stack-radius,22px);background:color-mix(in srgb, var(--bg-deep) 28%, transparent);border:1px solid color-mix(in srgb, var(--text-bright) 12%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.25);backdrop-filter:blur(18px)saturate(1.25);color:var(--text-bright);transform-origin:50% 88%;will-change:transform, opacity, filter;flex-direction:column;justify-content:flex-end;padding:clamp(1.5rem,3.5vw,2.4rem) clamp(1.5rem,4vw,2.6rem);display:flex;position:absolute;inset:0;box-shadow:0 22px 56px #00000047,inset 0 1px #ffffff1a}.scroll-stack-card:not(:first-child){opacity:0;transform:translateY(110%)}.scroll-stack-card-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb, var(--text-bright) 68%, transparent);font-size:.75rem;font-weight:700}.scroll-stack-card h2{letter-spacing:-.03em;color:var(--text-bright);margin-top:.55rem;font-size:clamp(1.75rem,4vw,2.65rem);font-weight:700;line-height:1.05}.scroll-stack-card p{max-width:38ch;color:color-mix(in srgb, var(--text-bright) 82%, transparent);margin-top:.85rem;font-size:1.02rem;font-weight:500;line-height:1.55}.scroll-stack-meta{width:min(100%, var(--stack-card-width,880px));justify-content:center;align-items:center;gap:1rem;margin-top:1.15rem;display:flex}.scroll-stack-progress{background:color-mix(in srgb, var(--text-bright) 14%, transparent);border-radius:999px;flex:1;height:2px;overflow:hidden}.scroll-stack-progress>span{transform-origin:0;background:var(--text-bright);width:100%;height:100%;display:block}.scroll-stack-counter{letter-spacing:.08em;color:color-mix(in srgb, var(--text-bright) 72%, transparent);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:600}@media (prefers-reduced-motion:reduce){.scroll-stack-pin{height:auto;padding:1.5rem 1.25rem 2rem;position:relative}.scroll-stack-stage{flex-direction:column;gap:1rem;height:auto;max-height:none;display:flex}.scroll-stack-card{min-height:14rem;position:relative;inset:auto}}@media (prefers-reduced-transparency:reduce){.scroll-stack-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:color-mix(in srgb, var(--bg-deep) 78%, transparent)}}.home{background:var(--bg-deep);flex-direction:column;min-height:100svh;display:flex;position:relative;overflow-x:clip}.home-dots{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.home-dots:after{content:"";background:radial-gradient(ellipse 50% 42% at 50% 46%, color-mix(in srgb, var(--bg-deep) 10%, transparent) 0%, transparent 70%);pointer-events:none;position:absolute;inset:0}.home .public-header,.home-hero,.home-footer{z-index:1;position:relative}.home .public-header{z-index:3;position:sticky;top:0}.home-hero{max-width:72rem;padding:clamp(2.85rem,10vh,4.75rem) clamp(1.25rem,4vw,3rem) 1.5rem}.home-hero-title h1{letter-spacing:-.04em;text-transform:uppercase;color:var(--text-bright);text-shadow:0 2px 4px color-mix(in srgb, var(--bg-deep) 70%, transparent), 0 18px 48px color-mix(in srgb, var(--bg-deep) 45%, transparent);flex-direction:column;font-size:clamp(3.4rem,11vw,7.4rem);font-weight:800;line-height:.88;display:flex}.home-get-started{letter-spacing:.08em;text-transform:uppercase;color:#12141a;background:#fff;border:none;border-radius:999px;justify-content:center;align-items:center;margin-top:1.6rem;padding:.85rem 1.85rem;font-size:.8125rem;font-weight:700;transition:transform .15s,box-shadow .2s;display:inline-flex;box-shadow:0 0 0 1px #ffffff59,0 10px 28px #00000047,0 0 42px #ffffff38}.home-get-started:hover{transform:translateY(-1px);box-shadow:0 0 0 1px #ffffff73,0 14px 32px #00000052,0 0 56px #ffffff47}.home-get-started:focus-visible{outline:2px solid color-mix(in srgb, var(--text-bright) 55%, transparent);outline-offset:3px}.home-footer{z-index:1;text-align:center;color:color-mix(in srgb, var(--text-bright) 72%, transparent);text-shadow:0 1px 10px color-mix(in srgb, var(--bg-deep) 55%, transparent);padding:1.25rem 1.5rem 1.6rem;font-size:.8125rem;position:relative}@media (prefers-reduced-transparency:reduce){.home-dots:after{background:color-mix(in srgb, var(--bg-deep) 22%, transparent)}}.intro{background:var(--bg-deep);--intro-frost:1;flex-direction:column;min-height:100svh;display:flex;position:relative}.intro-dots{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.intro-dots:after{content:"";background:radial-gradient(ellipse 50% 42% at 50% 46%, color-mix(in srgb, var(--bg-deep) 10%, transparent) 0%, transparent 70%);pointer-events:none;position:absolute;inset:0}.intro-header,.intro-main,.intro-footer{z-index:1;position:relative}.intro-header{height:var(--header-height);justify-content:space-between;align-items:center;padding:0 clamp(1.25rem,4vw,2.5rem);display:flex}.intro-brand{letter-spacing:.12em;text-transform:uppercase;color:var(--text-bright);text-shadow:0 1px 2px color-mix(in srgb, var(--bg-deep) 70%, transparent), 0 0 28px color-mix(in srgb, var(--bg-deep) 55%, transparent);font-size:.9375rem;font-weight:700}.intro-brand:hover{opacity:.82}.intro-header-actions{background:color-mix(in srgb, var(--bg-deep) 48%, transparent);border:1px solid color-mix(in srgb, var(--text-bright) 12%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.15);backdrop-filter:blur(14px)saturate(1.15);border-radius:999px;align-items:center;gap:.5rem;padding:.35rem;display:flex;box-shadow:0 10px 28px #00000038}.intro-theme-toggle{border:1px solid color-mix(in srgb, var(--text-bright) 14%, transparent);background:color-mix(in srgb, var(--bg-surface) 70%, transparent);width:2.25rem;height:2.25rem;color:var(--text-bright);border-radius:999px;place-items:center;padding:0;transition:background .2s,border-color .2s,color .2s,transform .15s;display:inline-grid}.intro-theme-toggle:hover{background:color-mix(in srgb, var(--bg-elevated,var(--bg-surface)) 85%, transparent);border-color:color-mix(in srgb, var(--text-bright) 26%, transparent);transform:translateY(-1px)}.intro-theme-toggle:focus-visible{outline:2px solid color-mix(in srgb, var(--text-bright) 55%, transparent);outline-offset:2px}.intro .btn-ghost{color:color-mix(in srgb, var(--text-bright) 88%, transparent)}.intro .btn-ghost:hover:not(:disabled){color:var(--text-bright);background:color-mix(in srgb, var(--text-bright) 8%, transparent)}.intro .btn-secondary{background:color-mix(in srgb, var(--bg-surface) 72%, transparent);border-color:color-mix(in srgb, var(--text-bright) 16%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 22px #0000002e}.intro .btn-primary{box-shadow:0 8px 24px #00000047, 0 0 0 1px color-mix(in srgb, var(--text-bright) 8%, transparent)}.intro-main{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3rem;padding:2rem clamp(1.25rem,4vw,2.5rem) 4rem;display:flex}.intro-hero{border-radius:calc(var(--radius) + 8px);background:color-mix(in srgb, var(--bg-deep) 22%, transparent);border:1px solid color-mix(in srgb, var(--text-bright) 12%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.25);backdrop-filter:blur(14px)saturate(1.25);max-width:36rem;padding:clamp(1.35rem,3.5vw,2rem) clamp(1.35rem,4vw,2.5rem);box-shadow:0 16px 40px #00000029,inset 0 1px #ffffff1a}[data-theme=light] .intro-hero{background:#ffffff5c}.intro-hero h1{letter-spacing:.08em;text-transform:uppercase;color:var(--text-bright);text-shadow:0 1px 2px color-mix(in srgb, var(--bg-deep) 75%, transparent), 0 8px 32px color-mix(in srgb, var(--bg-deep) 55%, transparent);font-size:clamp(2.5rem,8vw,4rem);font-weight:700}.intro-lead{color:color-mix(in srgb, var(--text-bright) 86%, transparent);max-width:32ch;text-shadow:0 1px 12px color-mix(in srgb, var(--bg-deep) 50%, transparent);margin-top:1rem;margin-left:auto;margin-right:auto;font-size:1.0625rem;font-weight:500;line-height:1.55}.intro-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:2rem;display:flex}.intro-teaser{grid-template-columns:repeat(4,minmax(0,140px));justify-content:center;gap:1rem;width:100%;max-width:640px;display:grid}.intro-tile{aspect-ratio:1;background:color-mix(in srgb, var(--bg-surface) 52%, transparent);border:1px solid color-mix(in srgb, var(--text-bright) 10%, transparent);border-radius:var(--radius);-webkit-backdrop-filter:blur(12px)saturate(1.1);backdrop-filter:blur(12px)saturate(1.1);box-shadow:0 12px 28px #0000002e}.intro-tile--label{color:var(--text-muted);text-align:center;place-items:center;padding:.75rem;font-size:.75rem;font-weight:500;display:grid}.intro-footer{text-align:center;color:color-mix(in srgb, var(--text-bright) 72%, transparent);text-shadow:0 1px 10px color-mix(in srgb, var(--bg-deep) 55%, transparent);padding:1.5rem;font-size:.8125rem}@media (width<=640px){.intro-teaser{grid-template-columns:repeat(2,minmax(0,140px))}.intro-header-actions{gap:.35rem;padding:.28rem}}@media (prefers-reduced-transparency:reduce){.intro-dots:after{background:color-mix(in srgb, var(--bg-deep) 22%, transparent)}.intro-header-actions,.intro-tile,.intro .btn-secondary,.intro-hero{-webkit-backdrop-filter:none;backdrop-filter:none}.intro-hero{background:color-mix(in srgb, var(--bg-deep) 55%, transparent)}[data-theme=light] .intro-hero{background:#ffffffb3}}html.kryo-cursor-on,html.kryo-cursor-on *{cursor:none!important}html.kryo-cursor-on input,html.kryo-cursor-on textarea,html.kryo-cursor-on select,html.kryo-cursor-on [contenteditable=true]{cursor:text!important}.kryo-cursor{z-index:12000;pointer-events:none;opacity:0;position:fixed;inset:0}.kryo-cursor--on{opacity:1}.kryo-cursor-tip{transform-origin:3px 2.25px;will-change:transform;filter:drop-shadow(0 2px 6px #00000059);width:21px;height:21px;margin:-2px 0 0 -2px;position:absolute;top:0;left:0}.kryo-cursor--hot .kryo-cursor-tip{filter:drop-shadow(0 2px 6px #00000059)drop-shadow(0 0 10px #ffd23a8c)}.kryo-cursor-shard{width:21px;height:21px;display:block;overflow:visible}.kryo-cursor-shard-body,.kryo-cursor-shard-facet,.kryo-cursor-shard-core{stroke-linejoin:round;stroke-linecap:round}.kryo-cursor-shard-body{fill:#f4f6f8;stroke:#f4f6f8;stroke-width:3.2px}.kryo-cursor-shard-facet{fill:#ffecac;stroke:#ffecac;stroke-width:2.1px}.kryo-cursor-shard-core{fill:#ffd23a;stroke:#ffd23a;stroke-width:1.6px}[data-theme=light] .kryo-cursor-tip{filter:drop-shadow(0 1px 3px #12141a2e)}[data-theme=light] .kryo-cursor--hot .kryo-cursor-tip{filter:drop-shadow(0 1px 3px #12141a2e)drop-shadow(0 0 8px #12141a38)}[data-theme=light] .kryo-cursor-shard-body,[data-theme=light] .kryo-cursor-shard-facet,[data-theme=light] .kryo-cursor-shard-core{fill:#12141a;stroke:#12141a}.dock-outer{flex:1;align-items:stretch;max-width:100%;min-height:0;margin:0;display:flex}.dock-panel{background:0 0;border:none;border-radius:0;flex-direction:column;align-items:stretch;gap:.8rem;width:100%;padding:0;display:flex;position:relative;bottom:auto;left:auto;transform:none}.dock-item{z-index:1;width:calc(100% - (var(--sidebar-pad-x) * 2));margin-inline:var(--sidebar-pad-x);box-shadow:none;cursor:pointer;transition:background var(--wash-duration,.42s) ease;background:0 0;border:none;border-radius:8px;outline:none;flex-shrink:0;align-items:center;padding:0;display:flex;position:relative;overflow:visible}.dock-item:focus-visible{outline:2px solid color-mix(in srgb, var(--text-bright) 55%, transparent);outline-offset:2px}.dock-item:hover:not(.dock-item--active){background:var(--hover-wash)}.dock-icon{width:100%;min-width:0;height:100%;color:var(--text-muted);text-align:left;transition:color var(--wash-duration,.42s) ease;align-items:center;padding:0 .75rem;font-size:.9375rem;font-weight:500;display:flex}.dock-item:hover .dock-icon,.dock-item--active .dock-icon{color:var(--text-bright)}.dock-label{white-space:pre;border:1px solid color-mix(in srgb, var(--text-bright) 12%, transparent);background:color-mix(in srgb, var(--bg-deep) 88%, var(--bg-surface));width:fit-content;color:var(--text-bright);pointer-events:none;z-index:3;border-radius:.375rem;padding:.2rem .55rem;font-size:.75rem;font-weight:500;position:absolute;top:50%;left:calc(100% + .55rem);transform:translateY(-50%)}[data-theme=light] .dock-label{background:color-mix(in srgb, var(--bg-surface) 94%, #fff);border-color:color-mix(in srgb, var(--text-bright) 10%, transparent);color:var(--text-bright);box-shadow:0 4px 14px #12141a1a}@media (prefers-reduced-motion:reduce){.dock-item{transition:none}}.dock-panel--menu{gap:.125rem}.library-profile-dropdown .dock-outer{flex:none;width:100%}.dock-item--menu{border-radius:6px;width:100%;margin-inline:0}.dock-item--menu:hover:not(.dock-item--active),.dock-item--menu.dock-item--active{background:var(--bg-elevated)}.dock-icon--menu{color:var(--text);padding:0 .75rem;font-size:.875rem;font-weight:500}.dock-item--menu:hover .dock-icon--menu,.dock-item--menu.dock-item--active .dock-icon--menu{color:var(--text-bright)}.dock-icon--menu .library-profile-dropdown-row{width:100%}.dock-item--menu.library-profile-dropdown-danger:hover .dock-icon--menu{color:var(--danger-hover)}.library{--wash-duration:.42s;background:var(--bg-deep);height:100svh;max-height:100svh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);display:flex;position:relative;overflow:hidden}.library-sidebar{--sidebar-pad-x:.875rem;z-index:1;width:var(--sidebar-width);background:var(--bg-surface);border-radius:var(--radius-lg);transition:background var(--wash-duration) ease, border-color var(--wash-duration) ease, box-shadow var(--wash-duration) ease, backdrop-filter var(--wash-duration) ease, color var(--wash-duration) ease;border:1px solid #0000;flex-direction:column;flex-shrink:0;align-self:stretch;gap:1.5rem;margin:1rem 0 1rem 1rem;padding:1.5rem 0;display:flex;position:relative;overflow:hidden auto}.library-brand{letter-spacing:.14em;text-transform:uppercase;color:var(--text-bright);padding:0 calc(var(--sidebar-pad-x) + .5rem);transition:color var(--wash-duration) ease;font-size:.875rem;font-weight:700}.library-nav{flex-direction:column;flex:1;gap:.8rem;min-height:0;display:flex;position:relative}.library-nav-track{flex-direction:column;gap:.8rem;width:100%;display:flex;position:relative}.library-nav-indicator{left:var(--sidebar-pad-x);right:var(--sidebar-pad-x);z-index:0;background:var(--bg-active);pointer-events:none;will-change:transform, height;transition:background var(--wash-duration) ease;border-radius:8px;position:absolute;top:0}.library-nav-indicator--ready{transition:transform .32s cubic-bezier(.22, 1, .36, 1), height .32s cubic-bezier(.22, 1, .36, 1), background var(--wash-duration) ease}.library-nav-indicator:before{content:"";left:calc(-1 * var(--sidebar-pad-x));background:var(--text-bright);width:2px;transition:background var(--wash-duration) ease;border-radius:0 1px 1px 0;position:absolute;top:18%;bottom:18%}.library-nav-item{width:calc(100% - (var(--sidebar-pad-x) * 2));margin-inline:var(--sidebar-pad-x);color:var(--text-muted);text-align:left;z-index:1;transition:color var(--wash-duration) ease, background var(--wash-duration) ease;background:0 0;border:none;border-radius:8px;align-items:center;padding:.625rem .75rem;font-size:.9375rem;font-weight:500;display:flex;position:relative}.dock-item.library-nav-item{padding:0}.library-nav-track>.dock-item:hover:not(.dock-item--active),.library-nav>.library-nav-item:hover:not(.library-nav-item--active){color:var(--text-bright);background:var(--hover-wash)}.library-nav-item--active,.dock-item--active .dock-icon{color:var(--text-bright)}.library-nav-group{flex-direction:column;min-width:0;display:flex}.library-nav-sub{opacity:0;padding-left:calc(var(--sidebar-pad-x) + 1.25rem);grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.22,1,.36,1),opacity .2s;display:grid}.library-nav-sub:not(.library-nav-sub--open){pointer-events:none}.library-nav-sub--open{opacity:1;grid-template-rows:1fr}.library-nav-sub-inner{flex-direction:column;gap:.125rem;min-height:0;padding:.25rem 0 .5rem;display:flex;overflow:hidden}.library-nav-sub .library-nav-item{width:auto;margin-inline:0;padding:.375rem .75rem;font-size:.8125rem;font-weight:400}.library-nav-sub .library-nav-item--active{color:var(--text-bright);background:0 0}@media (prefers-reduced-motion:reduce){.library-nav-indicator--ready,.library-nav-sub{transition:none}}.library-main{z-index:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-width:0;min-height:0;padding:1rem 1.5rem 1.5rem;display:flex;position:relative;overflow:hidden auto}.library-wash{z-index:0;pointer-events:none;animation:library-backdrop-in var(--wash-duration) ease both;position:absolute;inset:0;overflow:hidden}.library-wash--exit{animation:library-backdrop-out var(--wash-duration) ease both}.library-wash img{object-fit:cover;object-position:center 45%;filter:blur(52px)saturate(1.35);width:136%;height:136%;position:absolute;inset:-18%;transform:scale(1.08)}.library-wash:after{content:"";background:linear-gradient(165deg, color-mix(in srgb, var(--bg-deep) 42%, transparent) 0%, color-mix(in srgb, var(--bg-deep) 68%, transparent) 42%, color-mix(in srgb, var(--bg-deep) 86%, transparent) 100%);position:absolute;inset:0}[data-theme=light] .library-wash img{filter:blur(52px)saturate(1.55)contrast(1.06)}[data-theme=light] .library-wash:after{background:#12141a0f}.library--game,.library--profile,.library-main--profile{--wash-frost:#1c1e246b;--wash-frost-hover:#282a328f;--wash-frost-border:#8c929e33;--wash-frost-chip:#22242c66;--wash-frost-soft:#8c929e17;--wash-frost-sep:#8c929e2e}[data-theme=light] .library--game,[data-theme=light] .library--profile,[data-theme=light] .library-main--profile{--wash-frost:#ffffff29;--wash-frost-hover:#ffffff47;--wash-frost-border:#ffffff52;--wash-frost-chip:#ffffff2e;--wash-frost-soft:#ffffff1f;--wash-frost-sep:#ffffff38}.library--game .library-sidebar{background:var(--wash-frost);-webkit-backdrop-filter:blur(16px)saturate(1.35);backdrop-filter:blur(16px)saturate(1.35);border:1px solid var(--wash-frost-border);box-shadow:none}.library--game .library-brand,.library--game .library-nav-item--active,.library--game .library-nav-sub .library-nav-item--active,.library--game .dock-item--active .dock-icon{color:#fff}.library--game .library-nav-item,.library--game .dock-icon{color:#ffffffb3}.library--game .library-nav-track>.dock-item:hover:not(.dock-item--active),.library--game .library-nav-track>.dock-item:hover:not(.dock-item--active) .dock-icon,.library--game .library-nav>.library-nav-item:hover:not(.library-nav-item--active){color:#fff;background:var(--wash-frost-soft)}.library--game .dock-item:hover:not(.dock-item--active){background:var(--wash-frost-soft)}.library--game .dock-label{background:var(--wash-frost);-webkit-backdrop-filter:blur(12px)saturate(1.35);backdrop-filter:blur(12px)saturate(1.35);border-color:var(--wash-frost-border);color:#fff}.library--game .library-nav-indicator{background:var(--wash-frost-chip)}.library--game .library-nav-indicator:before{background:#fff}.library-main--game .library-search,.library-main--game .library-profile,.library-main--game .library-notice-btn,.library-main--game .library-menu-toggle,.library-main--profile .library-profile,.library-main--profile .library-notice-btn,.library-main--profile .library-menu-toggle{background:var(--wash-frost);-webkit-backdrop-filter:blur(16px)saturate(1.35);backdrop-filter:blur(16px)saturate(1.35);border:1px solid var(--wash-frost-border);box-shadow:none;color:#fff}.library-main--game .library-search input{color:#fff}.library-main--game .library-search svg,.library-main--game .library-search input::placeholder{color:#ffffffb3}.library-main--game .library-profile:hover,.library-main--game .library-profile[aria-expanded=true],.library-main--game .library-notice-btn:hover,.library-main--game .library-notice-btn[aria-expanded=true],.library-main--game .library-menu-toggle:hover,.library-main--game .library-menu-toggle[aria-expanded=true],.library-main--profile .library-profile:hover,.library-main--profile .library-profile[aria-expanded=true],.library-main--profile .library-notice-btn:hover,.library-main--profile .library-notice-btn[aria-expanded=true],.library-main--profile .library-menu-toggle:hover,.library-main--profile .library-menu-toggle[aria-expanded=true]{background:var(--wash-frost-hover);color:#fff}.library-main--game .library-profile-avatar,.library-main--profile .library-profile-avatar{background:var(--wash-frost-chip);color:#fff}.library-main--game .library-profile-dropdown,.library-main--profile .library-profile-dropdown,.library-main--game .library-notice-panel,.library-main--profile .library-notice-panel{background:var(--wash-frost);-webkit-backdrop-filter:blur(16px)saturate(1.35);backdrop-filter:blur(16px)saturate(1.35);border:1px solid var(--wash-frost-border);box-shadow:none}.library-main--game .library-profile-dropdown .dock-icon--menu,.library-main--profile .library-profile-dropdown .dock-icon--menu{color:#fff}.library-main--game .library-profile-dropdown .dock-item--menu:hover,.library-main--profile .library-profile-dropdown .dock-item--menu:hover,.library-main--game .library-profile-dropdown .dock-item--menu.dock-item--active,.library-main--profile .library-profile-dropdown .dock-item--menu.dock-item--active{background:var(--wash-frost-soft)}.library-main--game .library-profile-dropdown .dock-item--menu:hover .dock-icon--menu,.library-main--profile .library-profile-dropdown .dock-item--menu:hover .dock-icon--menu{color:#fff}.library-main--game .library-profile-dropdown-chevron,.library-main--profile .library-profile-dropdown-chevron{color:#ffffffb3}.library-main--game .library-profile-dropdown-check,.library-main--profile .library-profile-dropdown-check{color:#fff}.library-main--game .library-profile-dropdown-sep,.library-main--profile .library-profile-dropdown-sep{background:var(--wash-frost-sep)}.library-main--game .library-profile-dropdown-danger:hover .dock-icon--menu,.library-main--profile .library-profile-dropdown-danger:hover .dock-icon--menu{color:#f0a0a0}.library-main--game .library-profile-dropdown-danger:hover,.library-main--profile .library-profile-dropdown-danger:hover{background:var(--wash-frost-soft)}.library-main--game .game-detail-title{color:#fff}.library-main--game .game-detail-genre{color:#ffffffc7}.library-main--game .game-detail-description{color:#ffffffeb}.library-main--game .game-detail-back{color:#fff;background:var(--wash-frost);border:1px solid var(--wash-frost-border);-webkit-backdrop-filter:blur(12px)saturate(1.35);backdrop-filter:blur(12px)saturate(1.35)}.library-main--game .game-detail-back:hover{color:#fff;background:var(--wash-frost-hover)}.library-main--game .favorite-gem,[data-theme=light] .library-main--game .favorite-gem,[data-theme=light] .library-main--game .favorite-gem:not(.favorite-gem--on){color:#fff;background:var(--wash-frost);border:1px solid var(--wash-frost-border);box-shadow:none}.library-main--game .favorite-gem:hover,[data-theme=light] .library-main--game .favorite-gem:hover,[data-theme=light] .library-main--game .favorite-gem:not(.favorite-gem--on):hover{color:#fff;background:var(--wash-frost-hover)}.library-main--game .favorite-gem--on,[data-theme=light] .library-main--game .favorite-gem--on{color:#ff3b3b;background:#ff3b3b2e;border-color:#ff5a5a8c;box-shadow:0 0 0 1px #ff3b3b26,0 0 18px #ff3b3b59}.library-main--game .favorite-gem--on:hover,[data-theme=light] .library-main--game .favorite-gem--on:hover{color:#ff5252;background:#ff3b3b42}.library-main--game .game-detail-tags li{color:#fff;background:var(--wash-frost-chip);border:1px solid var(--wash-frost-border);-webkit-backdrop-filter:blur(12px)saturate(1.35);backdrop-filter:blur(12px)saturate(1.35)}.library-main--game .game-detail-play.btn-primary{color:#12141a;box-shadow:none;background:#fff}.library-main--game .game-detail-play.btn-primary:hover:not(:disabled){background:#f0f2f5}.library-main--game .game-detail-play.btn-secondary{color:#fff;background:var(--wash-frost);border-color:var(--wash-frost-border)}[data-theme=light] .library-main--game .game-detail-media{box-shadow:0 12px 32px #00000059}.library-topbar{z-index:32;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;padding-top:.5rem;display:flex;position:relative}.library-topbar-spacer{flex:1;min-width:0}.library-main--profile .library-topbar{z-index:32;pointer-events:none;justify-content:flex-end;margin:0;padding:0;position:absolute;top:1.85rem;left:2.35rem;right:2.35rem}.library-main--profile .library-menu-toggle,.library-main--profile .library-topbar-end,.library-main--profile .library-profile-menu{pointer-events:auto}.library-main--profile .library-topbar-spacer{display:none}.library-search{background:var(--bg-surface);border-radius:var(--radius-lg);max-width:420px;transition:background var(--wash-duration) ease, color var(--wash-duration) ease, border-color var(--wash-duration) ease, box-shadow var(--wash-duration) ease;border:1px solid #0000;flex:1;align-items:center;gap:.625rem;padding:.625rem 1.125rem;display:flex}.library-search svg{color:var(--text-muted);transition:color var(--wash-duration) ease;flex-shrink:0}.library-search input{min-width:0;color:var(--text-bright);transition:color var(--wash-duration) ease;background:0 0;border:none;outline:none;flex:1;font-size:.875rem}.library-search input::placeholder{color:var(--text-muted)}.library-profile{background:var(--bg-surface);border-radius:var(--radius-lg);color:var(--text-bright);max-width:200px;transition:background var(--wash-duration) ease, color var(--wash-duration) ease, border-color var(--wash-duration) ease, box-shadow var(--wash-duration) ease;border:1px solid #0000;align-items:center;gap:.625rem;padding:.375rem .875rem .375rem .375rem;font-size:.875rem;font-weight:500;display:flex}.library-profile:hover,.library-profile[aria-expanded=true]{background:var(--bg-elevated)}.library-profile-avatar{background:var(--bg-elevated);width:32px;height:32px;color:var(--text-bright);transition:background var(--wash-duration) ease, color var(--wash-duration) ease;border-radius:50%;flex-shrink:0;place-items:center;font-size:.75rem;font-weight:600;display:grid;overflow:hidden}.library-profile-avatar-img{object-fit:cover;width:100%;height:100%}.library-profile-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.library-topbar-end{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.library-notice{position:relative}.library-notice-btn{background:var(--bg-surface);border-radius:var(--radius-lg);width:44px;height:44px;color:var(--text-bright);transition:background var(--wash-duration) ease, color var(--wash-duration) ease, border-color var(--wash-duration) ease, box-shadow var(--wash-duration) ease;border:1px solid #0000;place-items:center;padding:0;display:grid;position:relative}.library-notice-btn:hover,.library-notice-btn[aria-expanded=true]{background:var(--bg-elevated)}.library-notice-badge{color:#fff;text-align:center;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--bg-surface);background:#ff3b4e;border-radius:999px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:16px;position:absolute;top:5px;right:5px}.library-notice-panel{z-index:20;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);width:min(22rem,100vw - 2rem);max-height:min(28rem,100vh - 6.5rem);box-shadow:var(--shadow-dropdown);padding:.65rem .55rem .55rem;position:absolute;top:calc(100% + .5rem);right:0;overflow:auto}.library-notice-head{justify-content:space-between;align-items:center;gap:.75rem;padding:.15rem .45rem .55rem;display:flex}.library-notice-title{color:var(--text-bright);margin:0;font-size:.8125rem;font-weight:700}.library-notice-clear{color:var(--text-muted);background:0 0;border:none;padding:0;font-size:.75rem;font-weight:600}.library-notice-clear:hover{color:var(--text-bright)}.library-notice-empty{color:var(--text-muted);text-align:center;margin:0;padding:1.15rem .7rem 1.25rem;font-size:.8125rem}.library-notice-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.library-notice-item{border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.7rem;padding:.55rem .4rem .6rem .45rem;display:grid}.library-notice-item:hover{background:var(--hover-wash)}.library-notice-body{min-width:0}.library-notice-item-title{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.8125rem;font-weight:700;overflow:hidden}.library-notice-item-copy,.library-notice-item-time{color:var(--text-muted);margin:.12rem 0 0;font-size:.75rem;line-height:1.35}.library-profile-menu{position:relative}.library-profile-dropdown{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);min-width:168px;box-shadow:var(--shadow-dropdown);z-index:20;padding:.375rem;position:absolute;top:calc(100% + .5rem);right:0}.library-profile-dropdown-row{justify-content:space-between;align-items:center;gap:.75rem;width:100%;display:flex}.library-profile-dropdown-chevron{color:var(--text-muted);font-size:1.125rem;line-height:1}.library-profile-dropdown-chevron--back{margin-right:.125rem}.library-profile-dropdown-check{color:var(--text-bright);font-size:.8125rem}.library-profile-dropdown-sep{background:var(--border);height:1px;margin:.25rem .5rem}.friend-toasts{z-index:30;pointer-events:none;flex-direction:column;align-items:stretch;gap:.5rem;width:min(22rem,100% - 2rem);display:flex;position:fixed;top:4.85rem;right:1.5rem}.friend-toast{pointer-events:auto;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-dropdown);color:var(--text-bright);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.75rem;padding:.85rem .85rem .9rem .9rem;animation:.28s cubic-bezier(.22,1,.36,1) both friend-toast-in;display:grid}.friend-toast-avatar{background:var(--bg-elevated);width:36px;height:36px;color:var(--text-bright);border-radius:50%;place-items:center;font-size:.75rem;font-weight:600;display:grid;overflow:hidden}.friend-toast-avatar-stack{flex-shrink:0;align-items:center;display:flex}.friend-toast-avatar-stack--group .friend-toast-avatar-wrap+.friend-toast-avatar-wrap,.library-notice-item .friend-toast-avatar-wrap+.friend-toast-avatar-wrap{margin-left:-.7rem}.friend-toast-avatar-stack--group .friend-toast-avatar,.library-notice-item .friend-toast-avatar-stack .friend-toast-avatar{box-shadow:0 0 0 2px var(--bg-surface)}.friend-toast-avatar-wrap{flex-shrink:0;width:36px;height:36px;position:relative}.friend-toast-online-dot{width:10px;height:10px;box-shadow:0 0 0 2px var(--bg-surface), 0 0 10px #39ff88d9, 0 0 18px #39ff8873;background:#39ff88;border-radius:50%;position:absolute;bottom:-1px;right:-1px}.friend-toast--online{border-color:color-mix(in srgb, #39ff88 28%, var(--border));box-shadow:var(--shadow-dropdown), 0 0 0 1px #39ff882e, 0 0 24px #39ff881f}.friend-toast-avatar-img{object-fit:cover;width:100%;height:100%}.friend-toast-body{min-width:0}.friend-toast-title{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.875rem;font-weight:700;line-height:1.3;overflow:hidden}.friend-toast-copy{color:var(--text-muted);margin:.15rem 0 0;font-size:.8125rem;line-height:1.4}.friend-toast-actions{flex-wrap:wrap;gap:.4rem;margin-top:.7rem;display:flex}.friend-toast-dismiss{width:1.75rem;height:1.75rem;color:var(--text-muted);background:0 0;border:none;border-radius:8px;place-items:center;margin:-.2rem -.2rem 0 0;padding:0;display:grid}.friend-toast-dismiss:hover{background:var(--hover-wash);color:var(--text-bright)}.library--game .friend-toast,.library--profile .friend-toast{background:var(--wash-frost);-webkit-backdrop-filter:blur(16px)saturate(1.35);backdrop-filter:blur(16px)saturate(1.35);border:1px solid var(--wash-frost-border);color:#fff}.library--game .friend-toast-avatar,.library--profile .friend-toast-avatar,.library-main--game .library-notice-item .friend-toast-avatar,.library-main--profile .library-notice-item .friend-toast-avatar{background:var(--wash-frost-chip);color:#fff}.library--game .friend-toast-avatar-stack--group .friend-toast-avatar,.library--profile .friend-toast-avatar-stack--group .friend-toast-avatar,.library-main--game .library-notice-item .friend-toast-avatar-stack .friend-toast-avatar,.library-main--profile .library-notice-item .friend-toast-avatar-stack .friend-toast-avatar{box-shadow:0 0 0 2px color-mix(in srgb, var(--wash-frost) 100%, transparent)}.library--game .friend-toast-title,.library--game .friend-toast-dismiss,.library--profile .friend-toast-title,.library--profile .friend-toast-dismiss{color:#fff}.library--game .friend-toast-copy,.library--profile .friend-toast-copy,.library-main--game .library-notice-item-copy,.library-main--game .library-notice-item-time,.library-main--game .library-notice-clear,.library-main--game .library-notice-empty,.library-main--profile .library-notice-item-copy,.library-main--profile .library-notice-item-time,.library-main--profile .library-notice-clear,.library-main--profile .library-notice-empty{color:#ffffffc7}.library-main--game .library-notice-title,.library-main--game .library-notice-item-title,.library-main--profile .library-notice-title,.library-main--profile .library-notice-item-title{color:#fff}.library-main--game .library-notice-item:hover,.library-main--profile .library-notice-item:hover{background:var(--wash-frost-soft)}.library-main--game .library-notice-badge,.library-main--profile .library-notice-badge{box-shadow:0 0 0 2px color-mix(in srgb, var(--wash-frost) 100%, transparent)}.library--game .friend-toast .btn-primary,.library--profile .friend-toast .btn-primary,.library-main--game .library-notice-panel .btn-primary,.library-main--profile .library-notice-panel .btn-primary{color:#12141a;background:#fff}.library--game .friend-toast .btn-secondary,.library--profile .friend-toast .btn-secondary,.library-main--game .library-notice-panel .btn-secondary,.library-main--profile .library-notice-panel .btn-secondary{background:var(--wash-frost-chip);border-color:var(--wash-frost-border);color:#fff}.library-main--game .library-notice-panel .friend-toast-dismiss,.library-main--profile .library-notice-panel .friend-toast-dismiss{color:#fff}.library--game .friend-toast-online-dot,.library--profile .friend-toast-online-dot{box-shadow:0 0 0 2px color-mix(in srgb, var(--wash-frost) 100%, transparent), 0 0 10px #39ff88d9, 0 0 18px #39ff8873}@keyframes friend-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.friend-toast{animation:none}}.library-content{flex:1}.library-content--enter{animation:.28s cubic-bezier(.22,1,.36,1) both library-section-in}.library-section-title{margin-bottom:1.25rem;font-size:1.25rem;font-weight:600}.library-grid{grid-template-columns:repeat(4,1fr);align-items:start;gap:1rem;margin:-.35rem;padding:.35rem;display:grid}.library-card{aspect-ratio:1.15;background:var(--bg-surface);border-radius:var(--radius);color:var(--text-bright);text-align:center;transform-origin:50%;border:none;place-items:center;padding:0;font-size:.875rem;font-weight:500;transition:background .25s,transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s cubic-bezier(.22,1,.36,1);display:grid;overflow:hidden}.library-card--with-meta{aspect-ratio:auto;text-align:left;flex-direction:column;place-items:stretch stretch;height:auto;display:flex}.library-card-media{aspect-ratio:735/575;background:#0a0a0a;flex:none;width:100%;line-height:0;position:relative;overflow:hidden}.library-card-cover{object-fit:cover;object-position:center;width:100%;height:100%;display:block;position:absolute;inset:0}.library-card-meta{background:color-mix(in srgb, var(--bg-deep) 72%, #3a4a62);color:var(--text-bright);flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding:.7rem .85rem;display:flex}[data-theme=light] .library-card-meta{background:color-mix(in srgb, var(--bg-surface) 82%, #d8dee8)}.library-card-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.875rem;font-weight:700;line-height:1.25;overflow:hidden}.library-card-platform{width:1.1rem;height:1.1rem;color:var(--text-bright);flex-shrink:0;display:inline-flex}.library-card-platform svg{width:100%;height:100%;display:block}.library-card--enter{animation:.32s cubic-bezier(.22,1,.36,1) both library-card-in}.library-card--interactive{cursor:pointer;will-change:transform}.library-card--interactive:hover{z-index:2;background:var(--bg-elevated);transform:scale(1.08)translateY(-6px);box-shadow:0 16px 36px #00000052}.library-card--interactive:active{transition-duration:.15s;transform:scale(1.04)translateY(-2px)}.library-card--interactive:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}[data-theme=light] .library-card--interactive:hover{box-shadow:0 12px 28px #12141a1f}.library-card--empty{color:var(--text-muted);cursor:default}.library-card--empty:hover{background:var(--bg-surface);box-shadow:none;transform:none}.library-empty{text-align:center;color:var(--text-muted);padding:3rem 1rem;font-size:.9375rem}.game-detail{z-index:1;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.game-detail-back{color:var(--text-muted);background:0 0;border:none;border-radius:8px;align-self:flex-start;align-items:center;gap:.375rem;margin-bottom:1.25rem;padding:.375rem .5rem;font-size:.875rem;font-weight:500;transition:color .15s,background .15s;display:inline-flex}.game-detail-back:hover{color:var(--text-bright);background:var(--hover-wash)}.favorite-gem{width:2.5rem;height:2.5rem;color:var(--text-bright);background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;border-radius:10px;flex-shrink:0;place-items:center;transition:color .2s,background .2s,border-color .2s,box-shadow .25s,transform .2s;display:inline-grid;position:relative;overflow:visible}[data-theme=light] .favorite-gem:not(.favorite-gem--on){color:#12141a;background:#12141a0f;border-color:#12141a1f}.favorite-gem:hover{background:var(--hover-wash)}.favorite-gem:focus-visible{outline-offset:2px;outline:2px solid #ff3b3ba6}.favorite-gem-icon{z-index:1;display:block;position:relative}.favorite-gem-outline,.favorite-gem-core,.favorite-gem-spokes{transition:stroke .22s,fill .22s,opacity .22s}.favorite-gem-core{fill:#0000}.favorite-gem--on{color:#ff3b3b;background:#ff3b3b1f;border-color:#ff3b3b66;box-shadow:0 0 16px #ff3b3b47}.favorite-gem--on .favorite-gem-core{fill:#ff3b3b59}.favorite-gem-burst{pointer-events:none;opacity:0;background:radial-gradient(circle,#ff3b3b73 0%,#0000 70%);border-radius:50%;width:0;height:0;position:absolute;inset:50%;transform:translate(-50%,-50%)}.favorite-gem--pop{animation:.52s cubic-bezier(.22,1.4,.36,1) favorite-gem-pop}.favorite-gem--pop .favorite-gem-burst{animation:.52s ease-out favorite-gem-burst}.favorite-gem--pop .favorite-gem-icon{animation:.52s cubic-bezier(.22,1.25,.36,1) favorite-gem-spin-in}.favorite-gem--release{animation:.38s favorite-gem-release}.favorite-gem--release .favorite-gem-icon{animation:.38s favorite-gem-spin-out}@keyframes favorite-gem-pop{0%{transform:scale(1)}35%{transform:scale(1.22)}60%{transform:scale(.94)}to{transform:scale(1)}}@keyframes favorite-gem-burst{0%{opacity:.9;width:0;height:0}70%{opacity:.35;width:3.25rem;height:3.25rem}to{opacity:0;width:3.75rem;height:3.75rem}}@keyframes favorite-gem-spin-in{0%{transform:rotate(-18deg)scale(.7)}55%{transform:rotate(8deg)scale(1.12)}to{transform:rotate(0)scale(1)}}@keyframes favorite-gem-release{0%{transform:scale(1)}40%{transform:scale(.88)}to{transform:scale(1)}}@keyframes favorite-gem-spin-out{0%{opacity:1;transform:rotate(0)scale(1)}45%{opacity:.65;transform:rotate(-12deg)scale(.82)}to{opacity:1;transform:rotate(0)scale(1)}}@media (prefers-reduced-motion:reduce){.favorite-gem--pop,.favorite-gem--release,.favorite-gem--pop .favorite-gem-burst,.favorite-gem--pop .favorite-gem-icon,.favorite-gem--release .favorite-gem-icon{animation:none}}.game-detail-layout{flex:1;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:2rem;min-height:0;display:grid}.game-detail-media{aspect-ratio:735/575;border-radius:var(--radius-lg);width:100%;color:var(--text-muted);background:#0a0a0a;place-items:center;font-size:.875rem;display:grid;overflow:hidden;box-shadow:0 18px 48px #00000052}[data-theme=light] .game-detail-media{box-shadow:0 16px 40px #12141a24}.game-detail-cover{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.game-detail-media-label{opacity:.7}.game-detail-info{flex-direction:column;align-items:flex-start;gap:.75rem;padding-top:.25rem;display:flex}.game-detail-genre{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem;font-weight:600}.game-detail-title{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700}.game-detail-description{color:var(--text-muted);max-width:42ch;font-size:.9875rem;line-height:1.6}.game-detail-tags{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.game-detail-tags li{color:var(--text-muted);background:var(--bg-surface);border-radius:6px;padding:.25rem .625rem;font-size:.75rem}.game-detail-actions{align-items:center;gap:.75rem;margin-top:1rem;display:flex}.game-detail-play{min-width:8rem;margin-top:0}.game-detail-actions .favorite-gem{border-radius:10px;width:2.75rem;height:2.75rem}.friends-view{flex-direction:column;gap:1.65rem;width:100%;max-width:none;display:flex}.friends-header{flex-direction:column;gap:.35rem;display:flex}.friends-lead{max-width:36rem;color:var(--text-muted);margin:0;font-size:.9375rem;line-height:1.5}.friends-banner{border-radius:8px;margin:0;padding:.625rem .875rem;font-size:.8125rem}.friends-banner--error{color:#f0a0a0;background:#ff50501f;border:1px solid #ff505047}.friends-banner--ok{color:var(--text-bright);background:var(--bg-surface);border:1px solid var(--border)}.friends-block{flex-direction:column;gap:.75rem;display:flex}.friends-section-head{align-items:center;gap:.55rem;display:flex}.friends-block-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:.45rem;margin:0;font-size:.8125rem;font-weight:600;display:inline-flex}.friends-count-pill{letter-spacing:.02em;min-width:1.4rem;height:1.25rem;color:var(--text-muted);background:color-mix(in srgb, var(--bg-elevated) 88%, transparent);border:1px solid var(--border);border-radius:999px;place-items:center;padding:0 .4rem;font-size:.6875rem;font-weight:700;display:inline-grid}.friends-count-pill--online{color:#1a3d2a;background:#39ff8838;border-color:#39ff8861}[data-theme=dark] .friends-count-pill--online{color:#b8ffd4}.friends-list{flex-direction:column;gap:.55rem;width:100%;margin:0;padding:0;list-style:none;display:flex}.friends-row{box-sizing:border-box;background:var(--bg-surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);align-items:center;gap:.75rem;width:100%;padding:.8rem 1rem;transition:border-color .18s,background .18s,box-shadow .18s;display:flex}.friends-row--menu-open{z-index:6;position:relative}.friends-row--online{border-color:color-mix(in srgb, #39ff88 26%, var(--border));background:linear-gradient(90deg, #39ff8814, transparent 42%), var(--bg-surface);box-shadow:0 0 0 1px #39ff8814}.friends-row--offline{opacity:.92}.friends-row--request{border-color:color-mix(in srgb, var(--text-bright) 14%, var(--border))}.friends-online-dot{background:#39ff88;border-radius:50%;flex-shrink:0;width:9px;height:9px;animation:1.8s ease-in-out infinite friends-online-pulse;box-shadow:0 0 8px #39ff88f2,0 0 16px #39ff8873}.friends-online-dot--inline{width:8px;height:8px}@keyframes friends-online-pulse{0%,to{transform:scale(1);box-shadow:0 0 8px #39ff88f2,0 0 16px #39ff8866}50%{transform:scale(1.08);box-shadow:0 0 12px #39ff88,0 0 24px #39ff888c}}.friends-avatar{background:var(--bg-elevated);width:40px;height:40px;color:var(--text-bright);border-radius:50%;flex-shrink:0;place-items:center;font-size:.75rem;font-weight:600;display:grid;overflow:hidden}.friends-avatar-img{object-fit:cover;width:100%;height:100%}.friends-row-meta{flex-direction:column;flex:1;gap:.12rem;min-width:0;display:flex}.friends-name{min-width:0;color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:600;overflow:hidden}.friends-status-label{color:var(--text-muted);font-size:.75rem;font-weight:500}.friends-status-label--online{color:color-mix(in srgb, #39ff88 72%, var(--text-bright));text-shadow:0 0 12px #39ff8859}.friends-row-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.friends-action{min-width:0;padding:.375rem .75rem;font-size:.8125rem}.friends-menu{flex-shrink:0;position:relative}.friends-menu-trigger{width:2rem;height:2rem;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;padding:0;transition:color .15s,background .15s,border-color .15s;display:grid}.friends-menu-trigger:hover:not(:disabled),.friends-menu-trigger--open{color:var(--text-bright);background:var(--hover-wash);border-color:var(--border)}.friends-menu-trigger:disabled{opacity:.55;cursor:not-allowed}.friends-menu-popover{z-index:8;background:var(--bg-surface);border:1px solid var(--border);min-width:9.5rem;box-shadow:var(--shadow-dropdown);border-radius:10px;flex-direction:column;gap:.15rem;padding:.3rem;animation:.16s cubic-bezier(.22,1,.36,1) both friends-menu-in;display:flex;position:absolute;top:calc(100% + .35rem);right:0}.friends-menu-item{width:100%;color:var(--text-bright);text-align:left;background:0 0;border:none;border-radius:7px;padding:.55rem .7rem;font-size:.8125rem;font-weight:500;transition:background .12s,color .12s;display:block}.friends-menu-item:hover:not(:disabled){background:var(--hover-wash)}.friends-menu-item--danger{color:#f0a0a0}.friends-menu-item--danger:hover:not(:disabled){color:#ffb4b4;background:#ff50501f}.friends-menu-item:disabled{opacity:.55;cursor:not-allowed}@keyframes friends-menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.friends-badge{color:var(--text-muted);background:var(--bg-elevated);border-radius:6px;flex-shrink:0;padding:.25rem .625rem;font-size:.75rem;font-weight:600}.friends-empty-card{border-radius:calc(var(--radius) + 2px);border:1px dashed color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--bg-surface) 55%, transparent);margin:0;padding:1rem 1.1rem}@media (prefers-reduced-motion:reduce){.friends-online-dot,.friends-menu-popover{animation:none}}.profile-view{flex-direction:column;gap:.25rem;width:100%;max-width:none;margin-top:0;display:flex}.profile-hero{border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;box-shadow:var(--shadow-dropdown);position:relative;overflow:visible}.profile-banner{border-radius:var(--radius-lg);background:radial-gradient(120% 90% at 20% 20%,#506ea059,#0000 55%),linear-gradient(145deg,#1c1f28 0%,#12141a 55%,#1a2030 100%);flex-direction:column;justify-content:flex-end;width:100%;min-height:280px;display:flex;position:relative;overflow:visible}.profile-banner--empty{background:radial-gradient(100% 80% at 70% 30%,#5a78aa47,#0000 50%),linear-gradient(155deg,#222632 0%,#14161c 48%,#1a2230 100%)}.profile-banner-media{border-radius:var(--radius-lg);position:absolute;inset:0;overflow:hidden}.profile-banner-img{object-fit:cover;width:100%;height:100%;display:block}.profile-banner-shade{pointer-events:none;background:linear-gradient(#0a0c101a 0%,#0a0c102e 42%,#0a0c10c7 100%);position:absolute;inset:0}.profile-hero-body{z-index:1;padding:5.5rem 9.5rem 1.25rem 1.25rem;position:relative}.profile-hero-identity{align-items:flex-end;gap:1rem;min-width:0;display:flex}.profile-hero-avatar{background:var(--bg-elevated);color:#fff;border:3px solid #ffffffe0;border-radius:18px;flex-shrink:0;place-items:center;width:104px;height:104px;font-size:1.75rem;font-weight:700;display:grid;overflow:hidden;box-shadow:0 10px 28px #00000059}.profile-hero-avatar img{object-fit:cover;width:100%;height:100%}.profile-hero-copy{min-width:0;padding-bottom:.2rem}.profile-hero-name{color:#fff;font-size:clamp(1.35rem,2.6vw,1.85rem);font-weight:700;line-height:1.15}.profile-hero-about-label{letter-spacing:.06em;text-transform:uppercase;color:#ffffffb3;margin-top:.45rem;font-size:.75rem;font-weight:600}.profile-hero-about{color:#ffffffeb;white-space:pre-wrap;max-width:52ch;margin-top:.25rem;font-size:.9375rem;line-height:1.45}.profile-stats{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-dropdown);border-radius:14px;flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:.9rem;padding:.45rem;display:flex}.profile-stat{background:color-mix(in srgb, var(--bg-elevated) 72%, transparent);border:1px solid color-mix(in srgb, var(--border) 90%, transparent);border-radius:10px;align-items:baseline;gap:.45rem;padding:.5rem .9rem;display:inline-flex;box-shadow:inset 0 1px #ffffff0a}[data-theme=light] .profile-stat{background:color-mix(in srgb, var(--bg-elevated) 85%, #fff);border-color:#12141a14;box-shadow:inset 0 1px #ffffffb3}.profile-stat-label{letter-spacing:.01em;color:#e8ecf4e0;font-size:.875rem;font-weight:500}[data-theme=light] .profile-stat-label{color:var(--text)}.profile-stat-value{letter-spacing:.02em;color:#5ee7ff;font-variant-numeric:tabular-nums;text-shadow:0 0 18px #5ee7ff47;font-size:.9375rem;font-weight:700}[data-theme=light] .profile-stat-value{color:#0891b2;text-shadow:none}.activity-heatmap{background:color-mix(in srgb, var(--bg-surface) 92%, #12141a);border:1px solid var(--border);box-shadow:none;border-radius:18px;margin-top:.9rem;padding:1.2rem 1.25rem 1.05rem}[data-theme=light] .activity-heatmap{background:var(--bg-surface);box-shadow:var(--shadow-dropdown)}.activity-heatmap-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.activity-heatmap-title{letter-spacing:-.01em;color:var(--text-bright);margin:0;font-size:1rem;font-weight:650}.activity-heatmap-picker{position:relative}.activity-heatmap-month-btn{color:var(--text-muted);background:color-mix(in srgb, var(--bg-elevated) 55%, transparent);border:1px solid var(--border);cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.75rem;font-weight:600;display:inline-flex}.activity-heatmap-month-btn:hover,.activity-heatmap-month-btn[aria-expanded=true]{color:var(--text-bright);background:var(--bg-elevated)}.activity-heatmap-month-menu{z-index:8;background:var(--bg-surface);border:1px solid var(--border);min-width:148px;box-shadow:var(--shadow-dropdown);border-radius:12px;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .4rem);right:0}.activity-heatmap-month-option{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.45rem .65rem;font-size:.8125rem;display:block}.activity-heatmap-month-option:hover,.activity-heatmap-month-option--active{color:var(--text-bright);background:var(--hover-wash)}.activity-heatmap-legend{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:.85rem 0 1.05rem;padding:0;list-style:none;display:flex}.activity-heatmap-legend-item{color:var(--text-muted);align-items:center;gap:.35rem;font-size:.72rem;font-weight:500;display:inline-flex}.activity-heatmap-swatch{border-radius:50%;flex-shrink:0;width:.65rem;height:.65rem}.activity-heatmap-grid{flex-direction:column;gap:.4rem;display:flex}.activity-heatmap-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;display:grid}.activity-heatmap-cell{aspect-ratio:2.35;border-radius:999px;width:100%;min-height:1.05rem;display:block}.activity-heatmap-cell--empty{visibility:hidden;pointer-events:none}.activity-heatmap-swatch--0,.activity-heatmap-cell--0{background-color:#1a1d24;background-image:repeating-linear-gradient(-45deg,#8ca0be24 0 1.5px,#0000 1.5px 4px);box-shadow:inset 0 0 0 1px #788caa1a}.activity-heatmap-swatch--1,.activity-heatmap-cell--1{background-color:#2a3344;background-image:repeating-linear-gradient(-45deg,#82aad233 0 1.5px,#0000 1.5px 4px);box-shadow:inset 0 0 0 1px #78a0d224}.activity-heatmap-swatch--2,.activity-heatmap-cell--2{box-shadow:none;background:#4a5f78}.activity-heatmap-swatch--3,.activity-heatmap-cell--3{box-shadow:none;background:#6ec8ff}[data-theme=light] .activity-heatmap-swatch--0,[data-theme=light] .activity-heatmap-cell--0{background-color:#e8edf4;background-image:repeating-linear-gradient(-45deg,#506e961f 0 1.5px,#0000 1.5px 4px);box-shadow:inset 0 0 0 1px #506e9614}[data-theme=light] .activity-heatmap-swatch--1,[data-theme=light] .activity-heatmap-cell--1{box-shadow:none;background-color:#c9d7e8;background-image:repeating-linear-gradient(-45deg,#466ea029 0 1.5px,#0000 1.5px 4px)}[data-theme=light] .activity-heatmap-swatch--2,[data-theme=light] .activity-heatmap-cell--2{background:#6f8fad}[data-theme=light] .activity-heatmap-swatch--3,[data-theme=light] .activity-heatmap-cell--3{background:#4eb4f0}.activity-heatmap-weekdays{color:var(--text-muted);text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;margin-top:.65rem;font-size:.72rem;font-weight:500;display:grid}@media (width<=720px){.activity-heatmap{padding:1rem .9rem .85rem}.activity-heatmap-week,.activity-heatmap-weekdays{gap:.28rem}.activity-heatmap-cell{min-height:.85rem}}.profile-edit-anchor{z-index:5;position:absolute;bottom:.85rem;right:.85rem}.profile-edit-btn{color:#fff;-webkit-backdrop-filter:blur(12px)saturate(1.25);backdrop-filter:blur(12px)saturate(1.25);cursor:pointer;background:#12141a8c;border:1px solid #ffffff47;border-radius:10px;align-items:center;gap:.4rem;padding:.45rem .75rem;font-size:.8125rem;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.profile-edit-btn:hover{background:#12141ab8;border-color:#fff6}.profile-view--editing .profile-hero-body{padding-right:1.25rem}.profile-edit-form{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown);flex-direction:column;gap:1rem;margin-top:1rem;padding:1.15rem 1.25rem 1.25rem;display:flex}.profile-edit-form-header{flex-direction:column;gap:.25rem;display:flex}.profile-edit-form-title{color:var(--text-bright);font-size:1.05rem;font-weight:700}.profile-edit-form-lead{color:var(--text-muted);font-size:.875rem}.profile-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem;display:grid}.profile-edit-grid .auth-field{margin:0}.profile-edit-grid .auth-field:nth-child(3),.profile-edit-grid .auth-field:nth-child(4){grid-column:1/-1}.profile-edit-section{flex-direction:column;gap:.45rem;display:flex}.profile-edit-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem;font-weight:600}.profile-edit-actions{flex-wrap:wrap;gap:.45rem;display:flex}.profile-edit-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.profile-bio-input{resize:vertical;width:100%;min-height:4.5rem;font:inherit;color:var(--text-bright);background:var(--bg-deep);border:1px solid var(--border);border-radius:8px;outline:none;padding:.65rem .75rem;font-size:.875rem}.profile-bio-input:focus{border-color:color-mix(in srgb, var(--text-bright) 28%, var(--border))}@media (width<=720px){.profile-banner{min-height:220px}.profile-hero-body{padding:4.5rem 1rem 3.25rem}.profile-hero-avatar{border-radius:16px;width:84px;height:84px;font-size:1.35rem}.profile-hero-identity{align-items:flex-start}.profile-edit-anchor{bottom:.65rem;right:.65rem}.profile-view--editing .profile-hero-body{padding-right:1rem}.profile-edit-grid{grid-template-columns:1fr}.profile-edit-form-actions{justify-content:stretch}.profile-edit-form-actions .btn{flex:1}}@media (width<=900px){.game-detail-layout{grid-template-columns:1fr;gap:1.5rem}}@keyframes library-section-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes library-card-in{0%{opacity:0}to{opacity:1}}@keyframes library-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes library-backdrop-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.library-content--enter,.library-card--enter,.library-wash,.library-wash--exit{animation:none}.library-wash img{transform:none}.library-card,.library-card--interactive:hover,.library-card--interactive:active{box-shadow:none;transition:none;transform:none}}.library-menu-toggle{background:var(--bg-surface);width:40px;height:40px;color:var(--text-bright);transition:background var(--wash-duration) ease, color var(--wash-duration) ease, border-color var(--wash-duration) ease, box-shadow var(--wash-duration) ease;border:1px solid #0000;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.library-menu-toggle:hover,.library-menu-toggle[aria-expanded=true]{background:var(--bg-elevated)}.library-backdrop{display:none}@media (width<=1100px){.library-grid{grid-template-columns:repeat(3,1fr)}.library-menu-toggle{display:inline-flex}.library-sidebar{z-index:40;border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown);pointer-events:none;transition:transform .28s cubic-bezier(.22, 1, .36, 1), background var(--wash-duration) ease, border-color var(--wash-duration) ease, box-shadow var(--wash-duration) ease;margin:0;position:fixed;top:1rem;bottom:1rem;left:1rem;transform:translate(calc(-100% - 1.5rem))}.library-sidebar--open{pointer-events:auto;transition:transform .28s cubic-bezier(.22, 1, .36, 1), background var(--wash-duration) ease, border-color var(--wash-duration) ease, box-shadow var(--wash-duration) ease;transform:translate(0)}.library-backdrop{z-index:30;background:var(--overlay-soft);border:none;padding:0;display:block;position:fixed;inset:0}.library-main{padding:1rem}.friend-toasts{right:1rem}.library-main--profile .library-topbar{justify-content:space-between;top:1.65rem;left:1.65rem;right:1.65rem}}@media (width<=768px){.library-topbar{flex-wrap:wrap}.friend-toasts{top:8.25rem;right:1rem}.library--profile .friend-toasts{top:4.6rem}.library-search{order:3;width:100%;max-width:none}.library-grid{grid-template-columns:repeat(2,1fr)}.friends-row--request{flex-wrap:wrap}.friends-row-actions{justify-content:flex-end;width:100%;padding-top:.15rem}}.btn{letter-spacing:.01em;border-radius:var(--radius);border:1px solid #0000;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;transition:background .2s,border-color .2s,color .2s,transform .15s;display:inline-flex}.btn-sm{padding:.5rem 1rem;font-size:.8125rem}.btn-primary{color:var(--bg-deep);background:var(--text-bright)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover);transform:translateY(-1px)}.btn-secondary{color:var(--text-bright);background:var(--bg-surface);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-elevated)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){color:var(--text-bright)}dialog.auth-modal,dialog.auth-modal[open]{box-shadow:none;color:inherit;outline:none;max-width:100vw;max-height:100vh;margin:auto;padding:0;overflow:visible;background:0 0!important;border:none!important}dialog.auth-modal:modal{box-shadow:none;color:inherit;outline:none;max-width:100vw;max-height:100vh;margin:auto;padding:0;overflow:visible;background:0 0!important;border:none!important}.auth-modal::backdrop{background:color-mix(in srgb, var(--bg-deep) 40%, transparent);-webkit-backdrop-filter:blur(12px)saturate(1.15);backdrop-filter:blur(12px)saturate(1.15)}.auth-modal-shell{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--bg-surface) 46%, transparent);border:1px solid color-mix(in srgb, var(--text-bright) 14%, transparent);width:min(420px,100vw - 2rem);box-shadow:var(--shadow-modal);-webkit-backdrop-filter:blur(18px)saturate(1.25);backdrop-filter:blur(18px)saturate(1.25);overflow:hidden}[data-theme=light] .auth-modal-shell{border-color:color-mix(in srgb, var(--text-bright) 12%, transparent);background:#ffffff6b}[data-theme=dark] .auth-modal-shell{background:color-mix(in srgb, var(--bg-surface) 48%, transparent)}.auth-modal-panel{width:100%;box-shadow:none;background:0 0;border:none;border-radius:0;padding:2rem;position:relative}.auth-modal-panel:before{content:"";pointer-events:none;background:linear-gradient(165deg,#ffffff24,#0000 45%);position:absolute;inset:0;box-shadow:inset 0 1px #ffffff24}.auth-modal-panel>*{z-index:1;position:relative}[data-theme=light] .auth-modal-panel:before{background:linear-gradient(165deg,#fff9,#0000 50%);box-shadow:inset 0 1px #fffc}.auth-modal-close{width:2rem;height:2rem;color:var(--text-muted);background:0 0;border:none;border-radius:6px;place-items:center;padding:0;font-size:1.5rem;line-height:1;transition:color .2s,background .2s;display:grid;position:absolute;top:1rem;right:1rem}.auth-modal-close:hover{color:var(--text-bright);background:var(--bg-elevated)}.auth-modal-header{margin-bottom:1.5rem;padding-right:2rem}.auth-modal-lead{color:var(--text-muted);margin-top:.5rem;font-size:.875rem;line-height:1.5}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-field{text-align:left;flex-direction:column;gap:.375rem;display:flex}.auth-field label{color:var(--text-bright);font-size:.8125rem;font-weight:500}.auth-field input{color:var(--text-bright);background:color-mix(in srgb, var(--bg-deep) 55%, transparent);border:1px solid color-mix(in srgb, var(--text-bright) 12%, transparent);border-radius:var(--radius);outline:none;padding:.625rem .875rem;font-size:.9375rem;transition:border-color .2s,box-shadow .2s,background .2s}.auth-field input::placeholder{color:var(--text-muted)}.auth-field input:focus{border-color:var(--focus-ring);box-shadow:0 0 0 3px var(--accent-dim)}.auth-field input:autofill{color:var(--text-bright);-webkit-text-fill-color:var(--text-bright);caret-color:var(--text-bright);border-color:color-mix(in srgb, var(--text-bright) 12%, transparent);box-shadow:0 0 0 1000px color-mix(in srgb, var(--bg-deep) 86%, var(--bg-surface)) inset;transition:background-color 99999s ease-out,border-color .2s,box-shadow .2s}.auth-field input:-webkit-autofill{color:var(--text-bright);-webkit-text-fill-color:var(--text-bright);caret-color:var(--text-bright);border-color:color-mix(in srgb, var(--text-bright) 12%, transparent);box-shadow:0 0 0 1000px color-mix(in srgb, var(--bg-deep) 86%, var(--bg-surface)) inset;transition:background-color 99999s ease-out,border-color .2s,box-shadow .2s}.auth-field input:-webkit-autofill:hover{color:var(--text-bright);-webkit-text-fill-color:var(--text-bright);caret-color:var(--text-bright);border-color:color-mix(in srgb, var(--text-bright) 12%, transparent);box-shadow:0 0 0 1000px color-mix(in srgb, var(--bg-deep) 86%, var(--bg-surface)) inset;transition:background-color 99999s ease-out,border-color .2s,box-shadow .2s}.auth-field input:-webkit-autofill:focus{color:var(--text-bright);-webkit-text-fill-color:var(--text-bright);caret-color:var(--text-bright);border-color:color-mix(in srgb, var(--text-bright) 12%, transparent);box-shadow:0 0 0 1000px color-mix(in srgb, var(--bg-deep) 86%, var(--bg-surface)) inset;transition:background-color 99999s ease-out,border-color .2s,box-shadow .2s}.auth-field input:-webkit-autofill:active{color:var(--text-bright);-webkit-text-fill-color:var(--text-bright);caret-color:var(--text-bright);border-color:color-mix(in srgb, var(--text-bright) 12%, transparent);box-shadow:0 0 0 1000px color-mix(in srgb, var(--bg-deep) 86%, var(--bg-surface)) inset;transition:background-color 99999s ease-out,border-color .2s,box-shadow .2s}:-webkit-any(.auth-field input:autofill:focus,.auth-field input:-webkit-autofill:focus){border-color:var(--focus-ring);box-shadow:0 0 0 1000px color-mix(in srgb, var(--bg-deep) 86%, var(--bg-surface)) inset, 0 0 0 3px var(--accent-dim)}:is(.auth-field input:autofill:focus,.auth-field input:autofill:focus){border-color:var(--focus-ring);box-shadow:0 0 0 1000px color-mix(in srgb, var(--bg-deep) 86%, var(--bg-surface)) inset, 0 0 0 3px var(--accent-dim)}.auth-form-extras{justify-content:flex-end;align-items:center;gap:1rem;font-size:.8125rem;display:flex}.auth-link{font:inherit;font-size:inherit;color:var(--text-bright);cursor:pointer;background:0 0;border:none;padding:0;font-weight:500;transition:opacity .2s}.auth-link:hover{opacity:.8}.auth-submit{width:100%;margin-top:.25rem}.auth-switch{color:var(--text-muted);text-align:center;border-top:1px solid color-mix(in srgb, var(--text-bright) 10%, transparent);margin-top:1.25rem;padding-top:1.25rem;font-size:.875rem}.auth-alert{border-radius:var(--radius);text-align:left;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.auth-alert--error{color:#fca5a5;background:#ef444424;border:1px solid #ef444447}.auth-alert--success{color:#6ee7b7;background:#10b98124;border:1px solid #10b98147}@media (prefers-reduced-transparency:reduce){.auth-modal::backdrop{background:color-mix(in srgb, var(--bg-deep) 55%, transparent);-webkit-backdrop-filter:none;backdrop-filter:none}.auth-modal-shell{-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=dark] .auth-modal-shell{background:color-mix(in srgb, var(--bg-surface) 92%, transparent)}[data-theme=light] .auth-modal-shell{background:#fffffff0}.auth-field input{background:color-mix(in srgb, var(--bg-deep) 72%, transparent)}}.app-loading{min-height:100svh;color:var(--text-muted);place-items:center;font-size:.875rem;display:grid}
