@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.absolute,.sr-only{position:absolute}.relative{position:relative}.right-3{right:.75rem}.top-3{top:.75rem}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mb-0{margin-bottom:0}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-\[22px\]{margin-bottom:22px}.mt-1{margin-top:.25rem}.mt-\[5px\]{margin-top:5px}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.hidden{display:none}.h-11{height:2.75rem}.h-4{height:1rem}.h-8{height:2rem}.h-\[38px\]{height:38px}.h-\[72px\]{height:72px}.h-auto{height:auto}.h-full{height:100%}.max-h-24{max-height:6rem}.max-h-72{max-height:18rem}.min-h-32{min-height:8rem}.min-h-\[38px\]{min-height:38px}.w-4{width:1rem}.w-8{width:2rem}.w-\[72px\]{width:72px}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.max-w-7xl{max-width:80rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.\!gap-5{gap:1.25rem!important}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-\[18px\]{gap:18px}.gap-\[5px\]{gap:5px}.gap-\[7px\]{gap:7px}.gap-\[9px\]{gap:9px}.gap-px{gap:1px}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-\[var\(--border\)\]>:not([hidden])~:not([hidden]){border-color:var(--border)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.border{border-width:1px}.border-0{border-width:0}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-\[color-mix\(in_oklab\2c var\(--auth-destructive\)_55\%\2c var\(--auth-border\)\)\]{border-color:color-mix(in oklab,var(--auth-destructive) 55%,var(--auth-border))}.border-\[var\(--auth-border\)\]{border-color:var(--auth-border)}.border-\[var\(--auth-input\)\]{border-color:var(--auth-input)}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--input\)\]{border-color:var(--input)}.border-transparent{border-color:transparent}.bg-\[color-mix\(in_oklab\2c var\(--accent\)_16\%\2c transparent\)\]{background-color:color-mix(in oklab,var(--accent) 16%,transparent)}.bg-\[color-mix\(in_oklab\2c var\(--auth-card\)_95\%\2c transparent\)\]{background-color:color-mix(in oklab,var(--auth-card) 95%,transparent)}.bg-\[color-mix\(in_oklab\2c var\(--auth-destructive\)_20\%\2c transparent\)\]{background-color:color-mix(in oklab,var(--auth-destructive) 20%,transparent)}.bg-\[color-mix\(in_oklab\2c var\(--auth-muted\)_55\%\2c transparent\)\]{background-color:color-mix(in oklab,var(--auth-muted) 55%,transparent)}.bg-\[color-mix\(in_oklab\2c var\(--card\)_72\%\2c transparent\)\]{background-color:color-mix(in oklab,var(--card) 72%,transparent)}.bg-\[color-mix\(in_oklab\2c var\(--muted\)_55\%\2c transparent\)\]{background-color:color-mix(in oklab,var(--muted) 55%,transparent)}.bg-\[var\(--accent\)\]{background-color:var(--accent)}.bg-\[var\(--auth-accent\)\]{background-color:var(--auth-accent)}.bg-\[var\(--border\)\]{background-color:var(--border)}.bg-\[var\(--card\)\]{background-color:var(--card)}.bg-\[var\(--input\)\]{background-color:var(--input)}.bg-\[var\(--muted\)\]{background-color:var(--muted)}.bg-transparent{background-color:transparent}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-\[11px\]{padding-left:11px;padding-right:11px}.px-\[9px\]{padding-left:9px;padding-right:9px}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-\[13px\]{padding-top:13px;padding-bottom:13px}.py-\[7px\]{padding-top:7px;padding-bottom:7px}.pb-6{padding-bottom:1.5rem}.pt-1{padding-top:.25rem}.pt-4{padding-top:1rem}.font-display{font-family:Space Grotesk,Inter,system-ui,sans-serif}.font-sans{font-family:Inter,system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-8{line-height:2rem}.leading-\[1\.3\]{line-height:1.3}.leading-\[18px\]{line-height:18px}.leading-\[19px\]{line-height:19px}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.text-\[color-mix\(in_oklab\2c var\(--accent\)_68\%\2c var\(--foreground\)\)\]{color:color-mix(in oklab,var(--accent) 68%,var(--foreground))}.text-\[var\(--accent-foreground\)\]{color:var(--accent-foreground)}.text-\[var\(--auth-accent-foreground\)\]{color:var(--auth-accent-foreground)}.text-\[var\(--auth-error-foreground\)\]{color:var(--auth-error-foreground)}.text-\[var\(--auth-foreground\)\]{color:var(--auth-foreground)}.text-\[var\(--foreground\)\]{color:var(--foreground)}.text-\[var\(--muted-foreground\)\]{color:var(--muted-foreground)}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.no-underline{text-decoration-line:none}.accent-\[var\(--accent\)\]{accent-color:var(--accent)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0/0.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-none{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-none{--tw-backdrop-blur: }.backdrop-blur-none,.backdrop-blur-sm{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\[font-family\:inherit\]{font-family:inherit}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.placeholder\:text-\[var\(--auth-muted-foreground\)\]::-moz-placeholder{color:var(--auth-muted-foreground)}.placeholder\:text-\[var\(--auth-muted-foreground\)\]::placeholder{color:var(--auth-muted-foreground)}.placeholder\:text-\[var\(--muted-foreground\)\]::-moz-placeholder{color:var(--muted-foreground)}.placeholder\:text-\[var\(--muted-foreground\)\]::placeholder{color:var(--muted-foreground)}.first\:pt-0:first-child{padding-top:0}.last\:pb-0:last-child{padding-bottom:0}.hover\:bg-\[color-mix\(in_oklab\2c var\(--accent\)_88\%\2c white\)\]:hover{background-color:color-mix(in oklab,var(--accent) 88%,white)}.hover\:bg-\[color-mix\(in_oklab\2c var\(--auth-accent\)_88\%\2c white\)\]:hover{background-color:color-mix(in oklab,var(--auth-accent) 88%,white)}.hover\:bg-\[color-mix\(in_oklab\2c var\(--auth-muted\)_45\%\2c transparent\)\]:hover{background-color:color-mix(in oklab,var(--auth-muted) 45%,transparent)}.hover\:bg-\[var\(--muted\)\]:hover{background-color:var(--muted)}.hover\:bg-transparent:hover{background-color:transparent}.hover\:text-\[var\(--foreground\)\]:hover{color:var(--foreground)}.focus-visible\:border-\[var\(--accent\)\]:focus-visible{border-color:var(--accent)}.focus-visible\:border-\[var\(--auth-accent\)\]:focus-visible{border-color:var(--auth-accent)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline:focus-visible{outline-style:solid}.focus-visible\:outline-2:focus-visible{outline-width:2px}.focus-visible\:outline-offset-1:focus-visible{outline-offset:1px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-\[var\(--accent\)\]:focus-visible{outline-color:var(--accent)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-\[var\(--accent\)\]:focus-visible{--tw-ring-color:var(--accent)}.focus-visible\:ring-\[var\(--auth-ring\)\]:focus-visible{--tw-ring-color:var(--auth-ring)}.focus-visible\:ring-\[var\(--auth-ring\2c var\(--accent\)\)\]:focus-visible{--tw-ring-color:var(--auth-ring,var(--accent))}.focus-visible\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-\[var\(--auth-card\)\]:focus-visible{--tw-ring-offset-color:var(--auth-card)}.focus-visible\:ring-offset-\[var\(--auth-card\2c var\(--card\)\)\]:focus-visible{--tw-ring-offset-color:var(--auth-card,var(--card))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-60{opacity:.6}.data-\[state\=active\]\:bg-\[var\(--accent\)\][data-state=active]{background-color:var(--accent)}.data-\[state\=active\]\:text-\[var\(--accent-foreground\)\][data-state=active]{color:var(--accent-foreground)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media not all and (min-width:640px){.max-sm\:hidden{display:none}.max-sm\:w-\[38px\]{width:38px}.max-sm\:px-0{padding-left:0;padding-right:0}}@media (min-width:481px){.min-\[481px\]\:w-auto{width:auto}.min-\[481px\]\:flex-row{flex-direction:row}.min-\[481px\]\:items-center{align-items:center}.min-\[481px\]\:justify-between{justify-content:space-between}.min-\[481px\]\:gap-4{gap:1rem}.min-\[481px\]\:text-right{text-align:right}}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:items-center{align-items:center}.sm\:p-5{padding:1.25rem}}@media (min-width:1024px){.lg\:grid{display:grid}.lg\:grid-cols-\[minmax\(180px\2c 0\.34fr\)_minmax\(0\2c 1fr\)\]{grid-template-columns:minmax(180px,.34fr) minmax(0,1fr)}.lg\:gap-7{gap:1.75rem}}@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap");:root{--background:#071426;--foreground:#f8fafc;--card:#102139;--card-foreground:#f8fafc;--primary:#10223a;--primary-foreground:#f8fafc;--muted:#162a43;--muted-foreground:#93a4ba;--accent:#168bff;--accent-foreground:#ffffff;--success:oklch(0.75 0.17 145);--danger:oklch(0.65 0.22 25);--border:#263a52;--input:#162a43;--radius:0.375rem;--radius-sm:calc(var(--radius) * 0.75);--radius-md:var(--radius);--radius-lg:calc(var(--radius) * 1.5);--page-content-max-width:1440px;--page-content-gutter:24px;--header-height:64px}.app-wrapper[data-theme=light]{--background:#f3f6fa;--foreground:#172033;--card:#ffffff;--card-foreground:#172033;--primary:#ffffff;--primary-foreground:#172033;--muted:#f2f5f9;--muted-foreground:#667085;--border:#d8e0ea;--input:#eef2f7;--success:oklch(0.5 0.15 145);--danger:oklch(0.55 0.2 25);color-scheme:light}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}.app-wrapper,body{background:var(--background);color:var(--foreground)}.app-wrapper{display:flex;flex-direction:column;height:100vh;overflow:hidden;color-scheme:dark}.header{align-items:stretch;min-height:var(--header-height);border-bottom:1px solid var(--border);background:var(--primary);color:var(--primary-foreground)}.header,.header-rail-cell{flex-shrink:0;display:flex}.header-rail-cell{width:64px;align-self:stretch;background:color-mix(in oklab,var(--background) 34%,var(--primary));border-right:1px solid var(--border)}.header-menu-button,.header-rail-cell{align-items:center;justify-content:center}.header-menu-button{display:inline-flex;width:36px;height:36px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--primary-foreground);cursor:pointer;transition:background .15s}.header-menu-button:hover{background:color-mix(in oklab,var(--accent) 10%,transparent)}.header-main{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px}.header-titles{display:flex;flex-direction:column;gap:4px;min-width:0}.header-title-lockup{display:flex;align-items:center;gap:8px;min-width:0;margin:0;overflow:visible;font-family:Inter,system-ui,sans-serif;font-size:20px;font-weight:900;line-height:1.1;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.header-title-badge{display:inline-flex;flex:0 0 36px;align-items:center;justify-content:center;box-sizing:border-box;width:36px;height:36px;border-radius:var(--radius-md);background:var(--accent);color:#ffffff;transform:rotate(-8deg)}.header-title-name{overflow:hidden;color:#ffffff;font-family:Inter,system-ui,sans-serif;font-size:1em;font-weight:900;line-height:1;letter-spacing:0;text-overflow:ellipsis}.app-wrapper[data-theme=light] .header-title-name{color:var(--accent)}.header-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;min-height:36px}.header-right .project-switcher{display:inline-flex}.project-switcher{position:relative}.project-switcher-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--primary-foreground);cursor:pointer;transition:background .15s}.project-switcher-toggle:hover{background:color-mix(in oklab,var(--accent) 10%,transparent)}.project-switcher-icon{width:18px;height:18px}.project-switcher-menu{position:absolute;top:calc(100% + 6px);right:0;left:auto;min-width:224px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card);box-shadow:0 10px 24px -8px rgba(0,0,0,.5);max-height:calc(100vh - 80px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in oklab,var(--border) 80%,transparent) transparent;z-index:60;padding:4px}.project-switcher-menu::-webkit-scrollbar{width:8px}.project-switcher-menu::-webkit-scrollbar-track{background:transparent}.project-switcher-menu::-webkit-scrollbar-thumb{background:color-mix(in oklab,var(--border) 80%,transparent);border:2px solid transparent;background-clip:padding-box;border-radius:999px}.project-switcher-menu::-webkit-scrollbar-thumb:hover{background:color-mix(in oklab,var(--border) 100%,transparent);background-clip:padding-box}.project-switcher-label{display:block;padding:6px 10px;font-size:13px;font-weight:600;color:var(--muted-foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-switcher-menu .project-switcher-item{width:100%;justify-content:flex-start;border:none;background:transparent;font-family:inherit;cursor:pointer;text-align:left}.project-switcher-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-switcher-item.is-active{background:color-mix(in oklab,var(--accent) 16%,transparent);color:var(--foreground)}.project-switcher-check{margin-left:auto;flex-shrink:0;opacity:.8}.project-switcher-empty{padding:8px;font-size:13px;color:color-mix(in oklab,var(--primary-foreground) 70%,transparent);text-align:center}.nav-rail-footer{margin-top:auto;display:flex;align-items:center;padding-top:8px}.nav-rail-footer.collapsed{justify-content:center}.nav-rail-divider{height:1px;margin:6px 8px;background:color-mix(in oklab,var(--primary-foreground) 18%,transparent)}.nav-rail.collapsed .nav-rail-divider{margin:6px 12px}.nav-rail-admin-badge{display:inline-flex;align-items:center;gap:3px;margin-left:auto;padding:2px 6px;border-radius:999px;border:1px solid color-mix(in oklab,#7cc4ff 45%,transparent);background:color-mix(in oklab,#7cc4ff 18%,transparent);color:#7cc4ff;font-size:10px;font-weight:600;line-height:1;text-transform:uppercase;letter-spacing:.04em}.nav-rail-admin-badge svg{width:12px;height:12px;flex-shrink:0}.nav-rail-icon{position:relative;flex-shrink:0}.nav-rail-admin-dot,.nav-rail-icon{display:inline-flex;align-items:center;justify-content:center}.nav-rail-admin-dot{position:absolute;top:-3px;right:-3px;width:15px;height:15px;border-radius:999px;background:var(--primary);color:#7cc4ff}.nav-rail-icon .nav-rail-admin-dot svg{width:11px;height:11px}.nav-rail-project{display:flex;align-items:center;gap:12px;width:100%;padding:8px;text-align:left;cursor:pointer;border-radius:var(--radius-md);border:1px solid color-mix(in oklab,var(--primary-foreground) 20%,transparent);background:color-mix(in oklab,var(--primary-foreground) 10%,transparent);transition:background .15s ease,border-color .15s ease}.nav-rail-project:hover:not(:disabled){background:color-mix(in oklab,var(--primary-foreground) 18%,transparent);border-color:color-mix(in oklab,var(--primary-foreground) 32%,transparent)}.nav-rail-project:disabled{cursor:not-allowed;opacity:.6}.nav-rail-footer.collapsed .nav-rail-project{width:auto;padding:0;border:none;background:transparent}.nav-rail-footer.collapsed .nav-rail-project:hover:not(:disabled){background:transparent}.nav-rail-project-badge{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-md);background:color-mix(in oklab,var(--primary-foreground) 10%,transparent);color:var(--primary-foreground);font-size:16px;font-weight:600;overflow:hidden}.nav-rail-project-badge img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.nav-rail-footer.collapsed .nav-rail-project-badge{border:1px solid color-mix(in oklab,var(--primary-foreground) 20%,transparent)}.nav-rail-project-name{min-width:0;font-size:.875rem;font-weight:500;line-height:1.2;color:var(--primary-foreground);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.project-switcher-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.project-select{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-width:220px;height:36px;padding:0 12px;border-radius:var(--radius-md);border:1px solid color-mix(in oklab,var(--primary-foreground) 20%,transparent);background:color-mix(in oklab,var(--primary-foreground) 10%,transparent);color:var(--primary-foreground);font-family:inherit;font-size:14px;line-height:1;cursor:pointer;transition:background .15s}.project-select:hover{background:color-mix(in oklab,var(--primary-foreground) 16%,transparent)}.project-select-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-select-chevron{flex-shrink:0;opacity:.7}.project-action-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--primary-foreground);cursor:pointer;transition:background .15s}.project-action-button:hover{background:color-mix(in oklab,var(--primary-foreground) 10%,transparent)}.header-grid-icon{width:22px;height:22px;opacity:.9}.app-switcher{position:relative}.app-switcher-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--primary-foreground);cursor:pointer;padding:0}.app-switcher-toggle:hover{background:color-mix(in oklab,var(--accent) 10%,transparent)}.app-switcher-menu{position:absolute;top:calc(100% + 6px);left:0;width:228px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card);box-shadow:0 10px 24px -8px rgba(0,0,0,.5);overflow:hidden;z-index:60;padding:8px}.app-switcher-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.app-switcher-app{display:inline-flex;min-width:0;height:76px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:10px 8px;color:var(--foreground);text-decoration:none;font-size:12px;font-weight:600;line-height:1.2;border-radius:var(--radius-sm);border:1px solid color-mix(in oklab,var(--border) 75%,transparent);background:color-mix(in oklab,var(--primary-foreground) 4%,transparent);text-align:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.app-switcher-app:hover{background:var(--accent);border-color:color-mix(in oklab,var(--primary-foreground) 24%,var(--border));color:var(--accent-foreground)}.app-switcher-app:focus-visible{outline:2px solid var(--primary-foreground);outline-offset:1px}.app-switcher-app svg{flex:0 0 20px}.app-switcher-app span{max-width:100%;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.app-switcher-elf-dust span{text-transform:none}.app-switcher-elf-dust{--elf-dust-gold:#edda6a;--elf-dust-edge-angle:0deg;position:relative;isolation:isolate;color:var(--elf-dust-gold);background:color-mix(in oklab,var(--elf-dust-gold) 8%,var(--card));border-color:color-mix(in oklab,var(--elf-dust-gold) 32%,var(--border))}.app-switcher-elf-dust:before{position:absolute;z-index:-1;inset:-1px;padding:1px;border-radius:inherit;pointer-events:none;content:"";background:conic-gradient(from var(--elf-dust-edge-angle),transparent 0deg 225deg,rgba(237,218,106,.35) 250deg,#fff4bc 285deg,#d9a934 320deg,transparent 350deg 1turn);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:elf-dust-edge-run 2.4s linear infinite}.app-switcher-elf-dust>svg{color:#fff4bc;filter:drop-shadow(0 0 4px #d9a934)}@media (prefers-reduced-motion:reduce){.app-switcher-elf-dust:before{animation:none}}.app-switcher-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;color:var(--foreground);text-decoration:none;font-size:14px;border-radius:var(--radius-sm)}.app-switcher-item:hover{background:var(--accent);color:var(--accent-foreground)}.app-switcher-item-static{cursor:default}.app-switcher-item-static:hover{background:transparent;color:var(--foreground)}.app-switcher-divider{height:1px;margin:4px -4px;background:var(--border);border:none}.app-switcher-external{color:currentColor;opacity:.7;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center}.app-switcher-external svg{width:14px;height:14px}.header-actions{display:flex;align-items:center;gap:8px}.header-actions button{border-color:color-mix(in oklab,var(--primary-foreground) 30%,transparent);background:color-mix(in oklab,var(--primary-foreground) 10%,transparent);color:var(--primary-foreground)}.header-actions button.primary{background:var(--primary-foreground);color:var(--primary)}.user-menu{position:relative}.user-menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:9999px;background:transparent;color:var(--primary-foreground);cursor:pointer;transition:background .15s}.user-menu-toggle:hover{background:color-mix(in oklab,var(--accent) 10%,transparent)}.user-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9999px;border:1px solid color-mix(in oklab,var(--primary-foreground) 30%,transparent);background:color-mix(in oklab,var(--primary-foreground) 12%,transparent);color:var(--primary-foreground);font-family:inherit;font-size:12px;font-weight:600;line-height:1;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden}.user-avatar img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.user-menu-content{position:absolute;top:calc(100% + 6px);right:0;min-width:216px;padding:4px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card);box-shadow:0 10px 24px -8px rgba(0,0,0,.5);z-index:60}.user-menu-item{display:block;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--foreground);font-family:inherit;font-size:14px;text-align:left;text-decoration:none;cursor:pointer}.user-menu-item:hover:not(:disabled){background:var(--accent);color:var(--accent-foreground)}.user-menu-item:disabled{opacity:.6;cursor:not-allowed}.settings-screen{max-width:1280px;margin:0 auto;padding:32px;display:flex;flex-direction:column;gap:24px}.settings-user-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);border-radius:.75rem;background:color-mix(in oklab,var(--muted) 40%,transparent)}.settings-user-identity{display:flex;align-items:center;gap:12px;min-width:0}.settings-user-avatar{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;flex-shrink:0;border-radius:999px;border:1px solid var(--border);background:var(--muted);color:var(--foreground);font-size:16px;font-weight:600;overflow:hidden}.settings-user-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.settings-user-info{min-width:0}.settings-user-name-row{display:flex;align-items:center;gap:8px}.settings-user-name-row h2{margin:0;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:24px;font-weight:600;line-height:1.2}.settings-user-email{margin:4px 0 0;font-size:14px;color:var(--muted-foreground)}.settings-signout{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;height:32px;padding:0 12px;border-radius:var(--radius-md);border:1px solid var(--muted-foreground);background:transparent;color:var(--foreground);font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s ease,color .15s ease}.settings-signout:hover{background:var(--accent);color:var(--accent-foreground)}.settings-card{padding:24px 0;border:2px solid color-mix(in oklab,var(--accent) 25%,transparent);border-radius:.75rem;background:color-mix(in oklab,var(--muted) 20%,transparent);box-shadow:0 1px 2px rgba(0,0,0,.2);display:flex;flex-direction:column;gap:24px}.settings-card-header{padding:0 24px;display:flex;flex-direction:column;gap:6px}.settings-card-title{font-family:Inter,system-ui,sans-serif;font-size:16px;font-weight:600;line-height:1;color:var(--foreground)}.settings-card-description{margin:0;font-size:14px;color:var(--muted-foreground)}.settings-card-content{padding:0 24px;display:flex;flex-direction:column;gap:24px}.settings-section{display:flex;flex-direction:column;gap:12px}.settings-section-tight{gap:8px}.settings-section-title{margin:0;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-size:14px;font-weight:500;color:var(--muted-foreground)}.settings-select-wrap{position:relative;display:flex;align-items:center;gap:8px;width:100%;max-width:384px;height:36px;padding:0 10px;border-radius:var(--radius-md);border:1px solid var(--input);background:transparent;color:var(--foreground)}.settings-select-wrap svg{flex-shrink:0;color:var(--foreground)}.settings-select{flex:1;min-width:0;height:100%;border:none;background:transparent;color:var(--foreground);font-size:14px;font-family:inherit;padding:0;cursor:pointer}.settings-select:focus{outline:none}.settings-select option{background:var(--card);color:var(--foreground)}.settings-select-wrap:focus-within{outline:2px solid var(--accent);outline-offset:1px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-row-info{display:flex;align-items:center;gap:10px}.settings-divider{height:1px;background:var(--border)}.settings-spacer{margin-left:auto}.settings-row-info>svg{flex-shrink:0;color:var(--muted-foreground)}.settings-select-wrap.settings-row-select{width:auto;max-width:200px;height:32px}.settings-row-label{font-size:14px;color:var(--foreground)}.settings-row-hint{margin:2px 0 0;font-size:12px;color:var(--muted-foreground)}.settings-version{font-size:14px;font-weight:500;font-family:ui-monospace,JetBrains Mono,SFMono-Regular,Menlo,monospace}.settings-switch{position:relative;flex-shrink:0;width:32px;height:19px;padding:0;border:1px solid transparent;border-radius:999px;background:var(--input);cursor:pointer;transition:background .15s ease}.settings-switch.on{background:var(--accent)}.settings-switch:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.settings-switch-thumb{position:absolute;top:50%;left:1px;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;background:var(--foreground);transition:transform .15s ease}.settings-switch.on .settings-switch-thumb{transform:translate(13px,-50%)}.settings-theme-control{display:inline-grid;grid-template-columns:repeat(2,34px);flex-shrink:0;padding:2px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--input)}.settings-theme-option{display:inline-flex;align-items:center;justify-content:center;width:34px;height:28px;padding:0;border:0;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--muted-foreground);cursor:pointer}.settings-theme-option:hover:not(:disabled){color:var(--foreground)}.settings-theme-option.active{background:var(--card);color:var(--accent);box-shadow:0 1px 3px color-mix(in srgb,var(--foreground) 14%,transparent)}.settings-theme-option:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.settings-theme-option:disabled{cursor:not-allowed;opacity:.55}.settings-dialog-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.5);animation:settings-dialog-fade .15s ease}.settings-dialog{position:relative;z-index:10000;width:100%;max-width:448px;max-height:calc(100vh - 32px);overflow-y:auto;padding:24px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:0 24px 48px rgba(0,0,0,.45);animation:settings-dialog-zoom .15s ease}@keyframes settings-dialog-fade{0%{opacity:0}to{opacity:1}}@keyframes settings-dialog-zoom{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.settings-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.settings-dialog-title{margin:0;font-family:Trebuchet MS,Space Grotesk,Inter,system-ui,sans-serif;font-size:18px;font-weight:600;line-height:1}.settings-dialog-close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:2px;border:none;background:transparent;color:var(--foreground);border-radius:var(--radius-sm);opacity:.7;cursor:pointer;transition:opacity .15s ease}.settings-dialog-close:hover{opacity:1}.settings-dialog-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px;opacity:1}.settings-dialog-body{display:flex;flex-direction:column;gap:24px;padding:16px 0 0}.elf-dust-info-dialog{--elf-dust-gold:#edda6a;max-width:520px}.elf-dust-info-title{display:flex;align-items:center;gap:8px;color:var(--elf-dust-gold)}.elf-dust-info-title>svg{flex-shrink:0;color:#fff4bc;filter:drop-shadow(0 0 5px #d9a934)}.elf-dust-info-body{gap:16px;font-size:14px;line-height:1.6;color:var(--foreground)}.elf-dust-info-body p{margin:0}.account-profile-card{display:flex;align-items:center;gap:12px;padding:12px;border:var(--card-border-width,1px) solid var(--border);border-radius:var(--radius-md);background:color-mix(in oklab,var(--foreground) 4%,transparent)}.account-profile-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;overflow:hidden;border-radius:50%;background:var(--accent);font-weight:600}.account-profile-avatar img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.account-profile-info{min-width:0;flex:1}.account-profile-info p,.account-profile-info strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-profile-card p{margin:3px 0 0;color:var(--muted-foreground);font-size:12px}.account-settings-signout{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--foreground);font:inherit;font-size:13px;cursor:pointer}.account-settings-signout:hover{background:var(--accent)}.account-settings-signout:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.settings-dialog-error{border-color:color-mix(in oklab,var(--danger) 45%,var(--border));background:color-mix(in oklab,var(--danger) 14%,transparent);color:var(--danger)}.settings-select-wrap.settings-dialog-select{max-width:none}.settings-dialog-subtitle{margin:6px 0 0;font-size:13px;line-height:1.4;color:var(--muted-foreground)}.settings-section-title{display:flex;align-items:center;gap:8px}.settings-section-title svg{flex-shrink:0;color:var(--muted-foreground)}.project-settings-input{width:100%;height:36px;padding:0 12px;border-radius:var(--radius-md);border:1px solid oklch(.3 .02 250);background:transparent;color:var(--foreground);font-size:14px;font-family:inherit}.project-settings-input:focus{outline:none;border-color:var(--accent)}.project-settings-input:disabled{opacity:.55;cursor:not-allowed}.detail-panel input,.detail-panel select,.detail-panel textarea,.settings-dialog .project-settings-input,.settings-dialog .settings-select-wrap,.settings-dialog input,.settings-dialog textarea{background:var(--input)}.project-settings-counter{align-self:flex-end;margin:0}.project-settings-logo-preview{display:flex;flex-direction:column;gap:6px}.project-settings-logo-preview img{width:96px;height:96px;-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--border);background:color-mix(in oklab,var(--foreground) 5%,transparent)}.project-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.project-settings-field{display:flex;flex-direction:column;gap:6px}.project-settings-error{margin:0;font-size:13px;color:var(--danger)}.organization-dialog{width:min(680px,calc(100vw - 32px));max-height:min(820px,calc(100vh - 32px));overflow-y:auto}.organization-form{gap:18px}.organization-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.organization-form-wide{grid-column:span 2}.organization-cell-stack,.organization-new-button,.organization-projects,.organization-unassigned{display:flex;align-items:center}.organization-new-button{gap:7px;white-space:nowrap}.organization-cell-stack,.organization-projects{align-items:flex-start;flex-direction:column;gap:4px}.organization-projects{min-width:180px;max-width:340px;line-height:1.4;white-space:normal}.organization-unassigned{gap:5px;color:var(--warning,#d89920);white-space:nowrap}.organization-table .admin-table-actions button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0}.organization-table .admin-table-actions button:disabled{cursor:not-allowed;opacity:.35}@media (max-width:640px){.organization-form-grid{grid-template-columns:1fr}.organization-form-wide{grid-column:auto}}.invite-account-type{display:grid;grid-template-columns:1fr 1fr;gap:8px}.invite-account-type-option{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface,transparent);color:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s,background-color .15s}.invite-account-type-option:hover{border-color:color-mix(in oklab,var(--primary) 50%,var(--border))}.invite-account-type-option.is-selected{border-color:var(--primary);background:color-mix(in oklab,var(--primary) 12%,transparent)}.project-settings-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.project-settings-button{display:inline-flex;align-items:center;gap:8px}.project-settings-button.is-primary{background:var(--accent);color:var(--accent-foreground);border-color:transparent;font-weight:600}.project-settings-button.is-danger{background:color-mix(in oklab,var(--danger) 70%,black);border-color:color-mix(in oklab,var(--danger) 45%,var(--border));color:var(--foreground)}.project-settings-delete{margin-right:auto}.project-settings-confirm{display:flex;flex-direction:column;gap:12px;padding:12px;border-radius:var(--radius-md);border:1px solid color-mix(in oklab,var(--danger) 45%,var(--border));background:color-mix(in oklab,var(--danger) 12%,transparent)}.project-settings-confirm-text{margin:0;font-size:13px;line-height:1.4;color:var(--foreground)}.project-settings-confirm .project-settings-actions{padding-top:0}.project-settings-spinner{animation:project-settings-spin .8s linear infinite}@keyframes project-settings-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}h1{margin:0;font-size:30px;line-height:1.1;letter-spacing:-.025em;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-weight:600}.header-sub{color:color-mix(in oklab,var(--primary-foreground) 70%,transparent);font-size:12px}.app-body{flex:1;display:flex;min-height:0;overflow:hidden}.nav-rail{flex-shrink:0;display:flex;flex-direction:column;gap:3px;width:196px;padding:12px 10px;background:color-mix(in oklab,var(--background) 28%,var(--primary));border-right:1px solid color-mix(in oklab,var(--border) 82%,transparent);overflow-y:auto;transition:width .2s ease}.nav-rail.collapsed{width:64px}.nav-rail-toggle{display:inline-flex;align-items:center;justify-content:center;align-self:flex-end;width:28px;height:28px;margin:0 2px 8px 0;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:color-mix(in oklab,var(--primary-foreground) 62%,transparent);cursor:pointer;transition:background .15s}.nav-rail.collapsed .nav-rail-toggle{align-self:center}.nav-rail-toggle:hover{background:color-mix(in oklab,var(--primary-foreground) 8%,transparent);color:var(--foreground)}.nav-rail-link{display:flex;align-items:center;gap:11px;height:38px;padding:0 10px;border:1px solid transparent;border-radius:6px;color:color-mix(in oklab,var(--primary-foreground) 72%,transparent);text-decoration:none;font-size:.9375rem;font-weight:400;line-height:1.25rem;white-space:nowrap;overflow:hidden;transition:background .15s,border-color .15s,color .15s}.nav-rail-link svg{width:17px;height:17px;flex-shrink:0}.nav-rail-link .nav-rail-icon{color:color-mix(in oklab,var(--primary-foreground) 66%,var(--accent))}.nav-rail-link:hover{background:color-mix(in oklab,var(--primary-foreground) 6%,transparent);color:var(--foreground)}.nav-rail-link.active{border-color:color-mix(in oklab,var(--primary-foreground) 7%,transparent);background:color-mix(in oklab,var(--primary-foreground) 10%,var(--primary));color:var(--foreground);font-weight:600;box-shadow:inset 2px 0 0 color-mix(in oklab,var(--accent) 72%,#ffffff)}.nav-rail-link.active .nav-rail-icon{color:color-mix(in oklab,var(--accent) 58%,#ffffff)}.nav-rail-link.collapsed{width:40px;justify-content:center;align-self:center;padding:0;overflow:visible}.app-content{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.nav-drawer-root{position:fixed;inset:0;z-index:100;pointer-events:none}.nav-drawer-root.open{pointer-events:auto}.nav-drawer-overlay{position:absolute;inset:0;background:rgba(0,0,0,.5);opacity:0;transition:opacity .2s ease}.nav-drawer-root.open .nav-drawer-overlay{opacity:1}.nav-drawer{position:absolute;top:0;left:0;height:100%;width:264px;max-width:80vw;display:flex;flex-direction:column;background:var(--primary);color:var(--primary-foreground);border-right:1px solid var(--border);box-shadow:0 10px 28px rgba(0,0,0,.32);transform:translateX(-100%);transition:transform .2s ease}.nav-drawer-root.open .nav-drawer{transform:translateX(0)}.nav-drawer-header{display:flex;align-items:center;gap:8px;padding:12px 12px 8px}.nav-drawer-title{flex:1;min-width:0;white-space:nowrap}.nav-drawer-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--primary-foreground);cursor:pointer;transition:background .15s}.nav-drawer-close:hover{background:color-mix(in oklab,var(--primary-foreground) 10%,transparent)}.nav-drawer-project{padding:4px 12px 8px}.nav-drawer-project .project-select{min-width:0;flex:1}.nav-drawer-nav{display:flex;flex-direction:column;gap:4px;padding:8px 12px;flex:1;min-height:0;overflow-y:auto}.nav-bar{flex-wrap:wrap;width:100%;max-width:100%;height:36px;padding:3px;margin:0;border:0;border-radius:var(--radius-lg);background:color-mix(in oklab,var(--primary-foreground) 10%,transparent);overflow:visible}.nav-bar,a.nav-link{display:inline-flex;align-items:center;justify-content:center;color:var(--muted-foreground)}a.nav-link{gap:6px;flex:1 1 0;height:calc(100% - 1px);border:1px solid transparent;background:transparent;border-radius:var(--radius-md);cursor:pointer;padding:4px 8px;font-family:system-ui,sans-serif;font-size:.875rem;font-weight:500;line-height:1.25rem;transition:color .15s,background .15s,box-shadow .15s;text-decoration:none;white-space:nowrap}a.nav-link svg{width:18px;height:18px;flex-shrink:0;margin-right:8px}a.nav-link.active{color:var(--primary);background:var(--primary-foreground);border-color:transparent;box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.container{max-width:calc(80rem + 48px);margin:0 auto;padding:24px;flex:1;overflow-y:auto;width:100%}.grid{display:grid;gap:16px}.grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.card{background:color-mix(in oklab,var(--card) 82%,black);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px}.module-card{display:flex;gap:16px;align-items:flex-start;padding:20px;text-decoration:none;color:inherit;cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease,transform .15s ease}.module-card:hover{border-color:var(--ring);background:color-mix(in oklab,var(--card) 90%,black);transform:translateY(-2px)}.module-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-md);background:color-mix(in oklab,var(--accent) 18%,transparent);color:var(--accent)}.module-icon svg{width:26px;height:26px}.module-body{display:flex;flex-direction:column;gap:4px}.module-name{margin:0;font-size:18px;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-weight:600}.module-tagline{margin:0;font-size:14px;font-weight:500;color:var(--accent)}.module-description{margin:4px 0 0;font-size:13px;line-height:1.5}.module-card{position:relative}.module-card.is-disabled{cursor:default;opacity:.55}.module-card.is-disabled:hover{border-color:var(--border);background:var(--card);transform:none}.module-card.is-locked{cursor:not-allowed;opacity:.7}.module-card.is-locked:hover{border-color:var(--border);background:var(--card);transform:none}.module-card.is-locked:before{content:"";position:absolute;top:16px;right:16px;width:18px;height:18px;background:currentColor;opacity:.45;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='11' width='18' height='11' rx='2'/><path d='M7 11V7a5 5 0 0 1 10 0v4'/></svg>") center /contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='11' width='18' height='11' rx='2'/><path d='M7 11V7a5 5 0 0 1 10 0v4'/></svg>") center /contain no-repeat}.access-add-bar{display:flex;gap:10px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.access-toggle{position:relative;display:inline-flex;align-items:center;flex-shrink:0;width:40px;height:22px;padding:0;border:none;border-radius:999px;background:color-mix(in oklab,var(--muted-foreground) 35%,transparent);cursor:pointer;transition:background .15s ease}.access-toggle:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s ease}.access-toggle.is-on{background:var(--accent)}.access-toggle.is-on:after{transform:translateX(18px)}.access-toggle:disabled{cursor:not-allowed;opacity:.6}.access-toggle:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.access-add-select,.access-role-select{height:36px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--foreground);font-size:14px}.access-role-select{height:32px;min-width:120px}.access-module-off{opacity:.4}.access-module-off .role-badge{background:color-mix(in oklab,var(--muted-foreground) 10%,transparent);border-color:var(--border);color:var(--muted-foreground)}.role-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid var(--border);background:color-mix(in oklab,var(--muted-foreground) 12%,transparent)}.role-badge.role-owner{border-color:color-mix(in oklab,var(--accent) 50%,transparent);background:color-mix(in oklab,var(--accent) 18%,transparent);color:var(--accent)}.role-badge.role-creator{border-color:color-mix(in oklab,var(--accent) 35%,transparent)}.role-badge.role-no_access{opacity:.7}.you-pill{display:inline-flex;align-items:center;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;border:1px solid color-mix(in oklab,var(--accent) 45%,transparent);background:color-mix(in oklab,var(--accent) 16%,transparent);color:var(--accent)}.access-row{cursor:pointer}.access-name{font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in oklab,var(--muted) 70%,black);color:var(--foreground);font:inherit;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn:hover{border-color:color-mix(in oklab,var(--accent) 45%,var(--border))}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{background:var(--accent);color:var(--accent-foreground);border-color:transparent}.btn-primary:hover{background:color-mix(in oklab,var(--accent) 88%,black);border-color:transparent}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:color-mix(in oklab,var(--muted) 60%,transparent);border-color:transparent}.btn-danger{color:var(--destructive,#dc2626)}.detail-panel-overlay{position:fixed;top:var(--header-height);right:0;bottom:0;left:0;z-index:9998;display:flex;justify-content:flex-end;background:rgba(0,0,0,.45);animation:detail-panel-fade .15s ease}.detail-panel{display:flex;flex-direction:column;width:420px;max-width:100%;height:100%;background:var(--card);border-left:4px solid var(--accent);box-shadow:-24px 0 48px rgba(0,0,0,.4);animation:detail-panel-slide .32s cubic-bezier(.32,.72,0,1)}@keyframes detail-panel-fade{0%{opacity:0}to{opacity:1}}@keyframes detail-panel-slide{0%{transform:translateX(100%)}to{transform:translateX(0)}}.detail-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;border-bottom:1px solid var(--border)}.detail-panel-heading{min-width:0;flex:1}.detail-panel-badge-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.detail-panel-title-row{display:flex;align-items:center;gap:10px}.detail-panel-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;border-radius:var(--radius-md,10px);border:1px solid var(--border);background:color-mix(in oklab,var(--accent) 14%,transparent);color:var(--accent)}.detail-panel-icon svg{width:20px;height:20px}.detail-panel-title{margin:0;font-family:Trebuchet MS,Space Grotesk,Inter,system-ui,sans-serif;font-size:20px;font-weight:600;line-height:1.2;overflow-wrap:anywhere}.detail-panel-subtitle{margin:8px 0 0;font-size:13px;overflow-wrap:anywhere}.detail-panel-close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-sm,8px);background:transparent;color:var(--foreground);opacity:.7;cursor:pointer;transition:opacity .15s ease,background .15s ease}.detail-panel-close:hover{opacity:1;background:color-mix(in oklab,var(--foreground) 10%,transparent)}.detail-panel-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:22px;padding:20px}.detail-panel-section-title{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-foreground)}.detail-panel-rows{display:flex;flex-direction:column;gap:10px}.detail-info-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-md,10px);background:color-mix(in oklab,var(--muted-foreground) 8%,transparent)}.detail-info-row-label{font-size:12px;color:var(--muted-foreground)}.detail-info-row-value{font-size:14px;font-weight:500;text-align:right;overflow-wrap:anywhere}.detail-info-block{padding:12px;border:1px solid var(--border);border-radius:var(--radius-md,10px);background:color-mix(in oklab,var(--muted-foreground) 8%,transparent)}.detail-info-block-label{margin-bottom:4px;font-size:12px;color:var(--muted-foreground)}.detail-info-block-value{font-size:14px;overflow-wrap:anywhere}.detail-panel-footer{padding:16px 20px;border-top:1px solid var(--border)}.detail-panel-footer .btn{width:100%;justify-content:center}.module-toggle{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;flex-shrink:0;width:40px;height:22px;padding:0;border:none;border-radius:999px;background:color-mix(in oklab,var(--muted-foreground) 35%,transparent);cursor:pointer;transition:background .15s ease}.module-toggle:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s ease}.module-toggle.is-on{background:var(--accent)}.module-toggle.is-on:after{transform:translateX(18px)}.module-toggle:disabled{cursor:not-allowed;opacity:.6}.module-toggle:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.card h2{margin:0 0 10px;font-size:18px;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-weight:600}.muted{color:var(--muted-foreground)}.value{font-size:28px;font-weight:700;color:var(--accent)}button,input,select,textarea{font:inherit}button{border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in oklab,var(--muted) 70%,black);color:var(--foreground);padding:8px 12px;cursor:pointer;font-weight:500}button.primary{background:var(--accent);color:var(--accent-foreground);border-color:transparent;font-weight:600}button.danger{background:color-mix(in oklab,var(--danger) 70%,black);border-color:color-mix(in oklab,var(--danger) 45%,var(--border))}button:disabled{opacity:.45;cursor:not-allowed}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px}.feed-page-content{padding:0}.admin-page-heading{margin-bottom:12px}.admin-page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-page-title{margin:0;display:inline-flex;align-items:center;gap:10px;font-family:Trebuchet MS,Space Grotesk,Inter,system-ui,sans-serif;font-size:24px;font-weight:700;color:var(--foreground)}.admin-page-title svg{width:24px;height:24px;color:var(--accent)}.admin-page-summary{margin:6px 0 0;font-size:13px}.admin-page-content{padding:0}.admin-panel{margin-bottom:14px;padding:14px;border:1px solid var(--border);border-radius:10px;background:color-mix(in oklab,var(--card) 96%,black)}.admin-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.admin-panel-header h3{margin:0;font-size:18px;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-weight:600}.admin-panel-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.admin-panel-controls label{font-size:12px;font-weight:500}.admin-panel-controls input,.admin-panel-controls select{min-height:34px;border-radius:6px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:transparent;color:var(--foreground);padding:0 10px;font-size:13px}.admin-panel-controls .status{margin-left:auto;font-size:12px}.admin-table-shell{border:1px solid var(--border);border-radius:8px;overflow:auto;max-height:620px;background:transparent}.admin-data-table{width:100%;border-collapse:collapse;border-spacing:0;font-size:14px}.admin-data-table thead th{background:transparent;color:var(--foreground);font-weight:500;font-size:12px;padding:0 8px;height:40px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}.admin-data-table tbody td{padding:8px;border-bottom:1px solid var(--border);vertical-align:top}.admin-data-table tbody tr:last-child td{border-bottom:0}.admin-data-table tbody tr:hover{background:color-mix(in oklab,var(--muted) 50%,transparent)}.admin-link-card{text-decoration:none;color:inherit}.admin-link-card .card{cursor:pointer;transition:all .2s;border-color:var(--accent)}.admin-link-card .card:hover{transform:translateY(-1px);border-color:color-mix(in oklab,var(--accent) 80%,white)}.feed-page-heading{margin-bottom:12px}.feed-table-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.feed-table-title{margin:0;display:inline-flex;align-items:center;gap:10px;font-size:24px;font-weight:700;color:var(--foreground)}.feed-table-title svg{width:24px;height:24px;color:var(--accent)}.feed-table-summary{margin:6px 0 0;font-size:13px}.ghost-button{background:color-mix(in oklab,var(--muted) 40%,transparent);border-color:color-mix(in oklab,var(--border) 75%,transparent);color:var(--foreground);padding:6px 10px;font-size:12px}.ghost-button:hover{background:color-mix(in oklab,var(--muted) 55%,transparent)}.feed-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding:14px;border:1px solid var(--border);border-radius:10px;background:color-mix(in oklab,var(--card) 96%,black)}.feed-filters-label{display:inline-flex;align-items:center;gap:8px;margin-right:4px;color:var(--foreground);font-size:14px;font-weight:500}.feed-filters-label svg{width:18px;height:18px;color:var(--muted-foreground)}.feed-filters label{font-size:12px;font-weight:500}.feed-filters input,.feed-filters select{min-height:34px;border-radius:6px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:transparent;color:var(--foreground);padding:0 10px;font-size:13px}.feed-filters input{min-width:240px;flex:1 1 320px}.feed-filters input:focus,.feed-filters select:focus{outline:none;border-color:color-mix(in oklab,var(--accent) 60%,var(--border));box-shadow:0 0 0 2px color-mix(in oklab,var(--accent) 20%,transparent)}.feed-filters .status{margin-left:auto;font-size:12px}.feed-table-shell{border:1px solid var(--border);border-radius:8px;overflow:auto;max-height:620px;background:transparent}.feed-table{width:100%;border-collapse:collapse;border-spacing:0;font-size:14px}.feed-table thead th{background:transparent;color:var(--foreground);font-weight:500;font-size:12px;padding:0 8px;height:40px;text-align:left}.feed-table tbody td,.feed-table thead th{border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}.feed-table tbody td{padding:8px}.feed-table tbody tr:last-child td{border-bottom:0}.feed-table-row:hover{background:color-mix(in oklab,var(--muted) 50%,transparent)}.feed-table-row{transition:background-color .2s ease}.feed-sortable-header{transition:background .2s ease}.feed-sortable-header:hover{background:color-mix(in oklab,var(--muted) 40%,transparent)}.feed-sort-btn{border:none;background:transparent;color:inherit;padding:0;display:inline-flex;align-items:center;gap:4px;font-weight:600;font-size:12px;width:100%;justify-content:flex-start;font-weight:inherit}.feed-sort-btn:hover{color:var(--foreground)}.feed-sort-indicator{display:inline-block;min-width:12px;color:color-mix(in oklab,var(--muted-foreground) 85%,var(--foreground))}.feed-message-cell{max-width:460px;white-space:normal;vertical-align:top}.feed-row-author{font-weight:600}.feed-row-subtle{font-size:12px;color:var(--muted-foreground)}.feed-heart-badge{display:inline-flex;min-width:24px;justify-content:center;align-items:center;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;background:color-mix(in oklab,var(--accent) 30%,transparent);color:var(--foreground)}.feed-official-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;background:color-mix(in oklab,var(--accent) 40%,transparent);color:var(--accent);text-transform:uppercase;letter-spacing:.5px}.feed-pinned-badge{display:none}.feed-pin-btn{width:18px;height:18px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:4px;background:transparent;color:var(--muted-foreground);cursor:pointer;transition:all .15s ease;flex-shrink:0;vertical-align:middle;margin-right:4px}.feed-pin-btn:hover{color:var(--accent);background:color-mix(in oklab,var(--accent) 15%,transparent)}.feed-pin-btn.active{color:var(--accent)}.feed-col-pin{width:32px;padding-left:8px;padding-right:0;text-align:center}.feed-delete-btn{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center}.feed-delete-btn svg{width:16px;height:16px}.feed-api-panel{margin-top:14px}.feed-api-grid{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);align-items:center;gap:10px}.feed-api-grid input[type=text]{width:100%;min-height:34px;border-radius:6px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:transparent;color:var(--foreground);padding:0 10px;font-size:13px}.feed-api-endpoint-wrap,.feed-api-token-wrap{width:100%}.feed-api-token-wrap{display:flex;align-items:center;gap:8px}.feed-api-token-wrap input{flex:1}.feed-api-token-wrap .ghost-button{min-height:34px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.feed-api-sample-wrap{width:100%}.feed-api-sample-note{margin:0 0 6px;font-size:12px}.feed-api-sample{margin:0;padding:10px;border:1px solid var(--border);border-radius:8px;background:color-mix(in oklab,var(--muted) 40%,transparent);font-size:12px;line-height:1.5;overflow-x:auto}.feed-api-sample code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.feed-api-toggle-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.feed-api-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px}.feed-api-toggle input{width:16px;height:16px}.feed-api-grid .status{grid-column:1/-1;margin-left:0}.feed-create-form{display:flex;flex-direction:column;gap:12px}.feed-create-grid{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);align-items:start;gap:10px}.feed-create-grid label{font-size:12px;font-weight:500;color:var(--muted-foreground);padding-top:8px}.feed-create-grid input,.feed-create-grid textarea{width:100%;min-height:34px;border-radius:6px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:transparent;color:var(--foreground);padding:8px 10px;font-size:13px;font-family:inherit}.feed-create-grid textarea{min-height:80px;resize:vertical}@media (max-width:840px){.admin-page-title{font-size:22px}.admin-page-title svg{width:20px;height:20px}.feed-table-title{font-size:22px}.feed-table-title svg{width:20px;height:20px}.feed-filters{padding:8px;gap:8px}.feed-api-grid{grid-template-columns:1fr}}.feed-page-toolbar{display:flex;gap:12px;margin-bottom:16px;align-items:center}#feedCreateDialog{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:24px;max-width:500px;width:90vw;color:var(--foreground);box-shadow:0 10px 40px rgba(0,0,0,.3)}#feedCreateDialog::backdrop{background:rgba(0,0,0,.5);backdrop-filter:blur(2px)}.feed-create-dialog-content{display:flex;flex-direction:column;gap:16px}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.dialog-header h2{margin:0;font-family:Trebuchet MS,Space Grotesk,Inter,system-ui,sans-serif;font-size:18px;font-weight:600}.close-dialog{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;background:transparent;color:var(--foreground);cursor:pointer;padding:0;transition:background-color .2s;flex-shrink:0}.close-dialog:hover{background:color-mix(in oklab,var(--border) 80%,transparent)}.close-dialog svg{width:20px;height:20px}.toolbar input,.toolbar select,textarea{background:color-mix(in oklab,var(--muted) 65%,black);border:1px solid var(--border);color:var(--foreground);border-radius:var(--radius-md);padding:8px 10px}.confirm-dialog{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:24px;max-width:440px;width:90vw;color:var(--foreground);box-shadow:0 10px 40px rgba(0,0,0,.3)}.confirm-dialog::backdrop{background:rgba(0,0,0,.5);backdrop-filter:blur(2px)}.confirm-dialog-content{display:flex;flex-direction:column;gap:16px}.confirm-dialog-content p{margin:0;line-height:1.5}.confirm-dialog-error{color:var(--danger);font-size:13px}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.admin-table-actions{text-align:right;white-space:nowrap}.admin-table-actions button.danger{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0}table{width:100%;border-collapse:collapse;font-size:13px}td,th{border-bottom:1px solid var(--border);padding:8px;vertical-align:top}th{text-align:left;color:var(--muted-foreground);font-weight:600}.stack{display:grid;gap:12px}.point-form{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.point-form textarea{grid-column:1/-1;min-height:76px;resize:vertical}.point-form .full{grid-column:1/-1}.badge{display:inline-block;border-radius:999px;padding:2px 8px;font-size:11px;background:color-mix(in oklab,var(--accent) 35%,transparent)}.status{margin-left:auto}.error{color:oklch(.8 .15 35)}@media (max-width:840px){.container{padding:12px 16px 16px}.point-form{grid-template-columns:1fr 1fr}.header-top{flex-direction:column;align-items:flex-start}.header-actions{width:auto}.nav-bar{max-width:100%;margin:0}}@property --elf-dust-edge-angle{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes elf-dust-edge-run{to{--elf-dust-edge-angle:360deg}}.auth-page{--auth-background:oklch(0.18 0.01 250);--auth-foreground:oklch(0.88 0.01 250);--auth-card:oklch(0.35 0.01 250);--auth-muted:oklch(0.25 0.02 250);--auth-muted-foreground:oklch(0.65 0.01 250);--auth-accent:oklch(0.7 0.15 195);--auth-accent-foreground:oklch(0.18 0.01 250);--auth-destructive:oklch(0.65 0.22 25);--auth-error-foreground:oklch(0.92 0.04 25);--auth-border:oklch(0.3 0.02 250);--auth-input:oklch(0.3 0.02 250);--auth-ring:oklch(0.7 0.15 195);--auth-control-background:color-mix(in oklab,var(--auth-muted) 70%,transparent);--auth-navigation-background:oklch(0.25 0.04 250);--auth-navigation-foreground:oklch(0.98 0 0);--auth-radius-md:0.375rem;--auth-radius-lg:0.5rem;position:relative;min-height:100dvh;width:100%;overflow-x:hidden;background:var(--auth-background);color:var(--auth-foreground);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}.auth-page button,.auth-page input{margin:0;border-style:solid;font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit}.auth-page input{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-width:1px;padding-block:0}.auth-map{position:fixed;inset:0;background:var(--auth-background)}.auth-map-fallback,.auth-map-image{background-color:var(--auth-background);background-image:url(/ETT\ Background.jpeg);background-position:50%;background-size:cover}.auth-map-image{position:absolute;inset:0;z-index:0;height:100%;width:100%}.auth-map-overlay{position:absolute;inset:0;z-index:1000;pointer-events:none;background:color-mix(in oklab,var(--auth-background) 70%,transparent);backdrop-filter:blur(4px)}.auth-shell{position:relative;z-index:1100;display:flex;align-items:center;justify-content:center;min-height:100dvh;width:100%;padding:24px}.auth-card{width:100%;max-width:28rem;background:var(--card);border:1px solid var(--auth-border);border-radius:var(--auth-radius-lg);box-shadow:0 20px 25px -5px rgba(0,0,0,.4),0 8px 10px -6px rgba(0,0,0,.4);backdrop-filter:blur(4px)}.auth-card-header{position:relative;display:grid;gap:16px;padding:24px 24px 28px}.auth-elf-dust-indicator{--elf-dust-gold:#edda6a;--elf-dust-edge-angle:0deg;position:absolute;top:14px;right:14px;isolation:isolate;display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:4px 9px;border-radius:999px;color:var(--elf-dust-gold);background:color-mix(in oklab,var(--elf-dust-gold) 8%,var(--auth-navigation-background));font-size:11px;font-weight:700;line-height:1;letter-spacing:0;white-space:nowrap;box-shadow:inset 0 0 0 1px rgba(237,218,106,.2),0 0 12px rgba(217,169,52,.08)}.auth-elf-dust-indicator:before{position:absolute;z-index:-1;inset:0;padding:1px;border-radius:inherit;pointer-events:none;content:"";background:conic-gradient(from var(--elf-dust-edge-angle),transparent 0deg 225deg,rgba(237,218,106,.35) 250deg,#fff4bc 285deg,#d9a934 320deg,transparent 350deg 1turn);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:elf-dust-edge-run 2.4s linear infinite}.auth-elf-dust-indicator>svg{flex:0 0 13px;color:#fff4bc;filter:drop-shadow(0 0 4px #d9a934)}.auth-brand{display:flex;gap:8px;text-align:center;font-family:Inter,system-ui,sans-serif;font-size:20px;font-weight:900;letter-spacing:0;line-height:1.1}.auth-brand,.auth-brand-badge{align-items:center;justify-content:center}.auth-brand-badge{display:inline-flex;flex:0 0 36px;box-sizing:border-box;width:36px;height:36px;border-radius:var(--radius-md);background:#168bff;color:#ffffff;transform:rotate(-8deg)}.auth-brand-name{color:#ffffff;font-size:1em;font-weight:900;line-height:1;letter-spacing:0}.auth-card-content{display:flex;flex-direction:column;gap:16px;padding:0 24px 24px}.auth-field input{border-color:color-mix(in oklab,var(--auth-navigation-foreground) 20%,transparent);background:color-mix(in oklab,var(--auth-navigation-foreground) 10%,transparent)}.auth-field input:focus-visible{border-color:var(--auth-accent)}.auth-card-content>button{border-color:transparent;color:var(--auth-accent-foreground);background:var(--auth-accent)}.auth-card-content>button:hover:not(:disabled){border-color:transparent;background:color-mix(in oklab,var(--auth-accent) 88%,white)}.auth-dev-hint,.auth-loading{color:var(--auth-muted-foreground);font-size:12px}.auth-loading{position:relative;z-index:1;font-size:14px}.auth-dev-hint{margin:0}.auth-oauth-logo{flex-shrink:0}.auth-app-links{display:flex;gap:8px}.auth-app-link,.auth-app-links{align-items:center;justify-content:center}.auth-app-link{display:inline-flex;width:40px;height:40px;flex:0 0 40px;border:1px solid color-mix(in oklab,var(--auth-navigation-foreground) 20%,transparent);border-radius:var(--auth-radius-md);color:var(--auth-muted-foreground);background:color-mix(in oklab,var(--auth-navigation-foreground) 10%,transparent);transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.auth-app-link:hover{transform:rotate(-8deg);color:var(--auth-navigation-foreground);border-color:transparent}.auth-app-link[data-app=suite]:hover{background:#2563eb}.auth-app-link[data-app=plan2]:hover{color:#111827;background:#d4a72c}.auth-app-link[data-app=eventstar]:hover{background:#dc2626}.auth-app-link[data-app=companion]:hover{background:#16a34a}.auth-app-link[data-app=erp]:hover{background:#000000}.auth-app-link:focus-visible{outline:2px solid var(--auth-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.auth-app-link{transition:none}}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--auth-muted-foreground);font-size:12px;text-transform:uppercase}.auth-divider:after,.auth-divider:before{content:"";flex:1;height:1px;background:var(--auth-border)}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-field{display:grid;gap:8px}@media (max-width:26rem){.auth-card-header{padding-top:54px}}@media (max-height:640px){.auth-shell{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.auth-elf-dust-indicator:before{animation:none;background:var(--elf-dust-gold)}}