:root,:root[data-theme=dark]{color-scheme:dark;--bg: #0B1220;--bg-elevated: #0F1A30;--bg-surface: #142339;--fg: #E2E8F0;--fg-muted: #94A3B8;--border: #1E2D47;--border-strong: #2A3D5C;--primary: #1E3F73;--on-primary: #F1F5F9;--accent: #C8A96B;--accent-fg: #1A1208;--success: #34D399;--warning: #F59E0B;--danger: #F87171;--link: #C8A96B;--shadow: rgba(0, 0, 0, .5);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--radius-pill: 999px;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", Menlo, Consolas, monospace}:root[data-theme=light]{color-scheme:light;--bg: #F8FAFC;--bg-elevated: #FFFFFF;--bg-surface: #F1F5F9;--fg: #0F172A;--fg-muted: #475569;--border: #E2E8F0;--border-strong: #CBD5E1;--primary: #0F2742;--on-primary: #FFFFFF;--accent: #C8A96B;--accent-fg: #1A1208;--success: #0F8A5F;--warning: #B45309;--danger: #B91C1C;--link: #0F2742;--shadow: rgba(15, 23, 42, .08)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-sm) 0;font-weight:600;line-height:1.2;letter-spacing:-.01em}h1{font-size:2.25rem}h2{font-size:1.75rem}h3{font-size:1.25rem}p{margin:0 0 var(--space-md) 0}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}code{font-family:var(--font-mono);background:var(--bg-surface);padding:.125rem .375rem;border-radius:var(--radius-sm);font-size:.875em}.flipai-app,.flipai-chrome{--bg: #0B0B0D;--bg-elevated: #0E0E11;--bg-subtle: rgba(245, 243, 239, .05);--bg-dark: #0B0B0D;--bg-gradient: radial-gradient(130% 90% at 82% -10%, #17171C 0%, #0B0B0D 55%);--surface-card: rgba(245, 243, 239, .035);--surface-input: rgba(245, 243, 239, .04);--fg: #F5F3EF;--fg-strong: #ffffff;--fg-muted: rgba(245, 243, 239, .78);--fg-subtle: rgba(245, 243, 239, .62);--fg-faint: rgba(245, 243, 239, .5);--fg-inverse: #ffffff;--accent: #C8703F;--accent-hover: #d27e4d;--primary: var(--accent);--on-primary: var(--fg-inverse);--accent-subtle: rgba(200, 112, 63, .1);--accent-tint-16: rgba(200, 112, 63, .16);--accent-tint-35: rgba(200, 112, 63, .35);--accent-border: rgba(200, 112, 63, .4);--success: #5BB97E;--success-subtle: rgba(91, 185, 126, .14);--warning: #C8703F;--warning-subtle: rgba(200, 112, 63, .16);--danger: #d96a6a;--danger-subtle: rgba(217, 106, 106, .14);--border: rgba(245, 243, 239, .08);--border-strong: rgba(245, 243, 239, .1);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 18px;--radius-xl: 20px;--radius-pill: 999px;--font-serif: "Schibsted Grotesk", system-ui, sans-serif;--font-sans: "Hanken Grotesk", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "IBM Plex Mono", Menlo, monospace;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:18px;line-height:1.6;letter-spacing:.005em;-webkit-font-smoothing:antialiased}.flipai-app ::selection,.flipai-chrome ::selection{background:#c8703f59;color:#fff}.flipai-app select,.flipai-chrome select{color-scheme:dark}.flipai-app select option,.flipai-chrome select option{background:var(--bg-elevated);color:var(--fg)}.flipai-app h1,.flipai-app h2,.flipai-app h3,.flipai-app h4,.flipai-chrome h1,.flipai-chrome h2,.flipai-chrome h3,.flipai-chrome h4{font-family:var(--font-serif);font-weight:700;letter-spacing:-.02em;color:var(--fg-strong);margin:0}.flipai-app h1{font-size:clamp(2.5rem,5vw,3.625rem);line-height:1}.flipai-app h2{font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15}.flipai-app h3{font-size:1.3125rem;line-height:1.3;font-weight:600;letter-spacing:-.01em}.flipai-app h4{font-size:1.125rem;line-height:1.4;font-weight:600}.flipai-app button,.flipai-chrome button{font-family:var(--font-sans);cursor:pointer}.flipai-app code,.flipai-app pre,.flipai-chrome code,.flipai-chrome pre{font-family:var(--font-mono)}.flipai-app code,.flipai-chrome code{background:var(--bg-elevated);border:1px solid var(--border)}html{scroll-behavior:smooth}.coming-soon-layout{--color-dark: #141413;--color-light: #f1eee7;--color-mid-gray: #b0aea5;--color-light-gray: #e3dacb;--color-accent-orange: #d97757;--color-accent-blue: #6a9bcc;--color-accent-green: #788c5d;--color-curtain-peak: #7A1025;--color-curtain-valley: #2B0610;--color-stage: #0a0608;--color-proscenium: #0a0405;background:var(--color-light);color:var(--color-dark);font-family:"Source Serif Pro",Georgia,serif;font-size:16px;line-height:1.6;min-height:100vh;display:flex;flex-direction:column}.coming-soon-layout h1,.coming-soon-layout h2,.coming-soon-layout h3,.coming-soon-layout .cs-sans{font-family:Inter,system-ui,sans-serif;font-weight:600;line-height:1.15;letter-spacing:-.01em}.coming-soon-layout :focus-visible{outline:2px solid var(--color-accent-orange);outline-offset:2px}.cs-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cs-nav{position:sticky;top:0;z-index:30;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,5vw);background:transparent;transition:background-color .2s ease,border-color .2s ease,backdrop-filter .2s ease;border-bottom:1px solid transparent}.cs-nav[data-scrolled=true]{background:var(--color-light);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom-color:var(--color-mid-gray)}.cs-nav-wordmark{font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:1.25rem;color:var(--color-dark);text-decoration:none}.cs-nav-buttons{display:flex;gap:12px}.cs-nav-btn{font-family:Inter,system-ui,sans-serif;font-weight:500;font-size:.9375rem;padding:8px 16px;border-radius:999px;border:1px solid var(--color-mid-gray);background:transparent;color:var(--color-dark);text-decoration:none;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease;display:inline-flex;align-items:center;line-height:1.2}.cs-nav-btn:hover,.cs-nav-btn--solid{background:var(--color-dark);color:var(--color-light);border-color:var(--color-dark)}.cs-nav-btn--solid:hover{background:transparent;color:var(--color-dark)}.cs-page-hero{padding:96px max(24px,5vw) 64px;max-width:1280px;margin:0 auto}.cs-page-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:64px;align-items:start}.cs-page-hero-headline{font-family:"Source Serif Pro",Georgia,serif;font-weight:400;font-size:clamp(2.5rem,5.5vw,5rem);line-height:1.05;letter-spacing:-.02em;color:var(--color-dark);margin:0;text-wrap:balance}.cs-page-hero-body{font-family:"Source Serif Pro",Georgia,serif;font-size:1.0625rem;line-height:1.6;color:var(--color-dark);max-width:38ch;margin-top:1rem}.cs-page-hero-body p{margin:0}.cs-hero{position:relative;padding:32px max(24px,5vw) 96px;max-width:1280px;margin:0 auto;display:flex;justify-content:center}.cs-theatre{position:relative;width:100%;max-width:1080px;padding:14px;background:var(--color-proscenium);border-radius:8px;box-shadow:0 10px 40px #00000059}.cs-proscenium-trim{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:8px;pointer-events:none;box-shadow:inset 0 0 0 1px #2a1418,inset 0 1px #b464501f}.cs-stage{position:relative;width:100%;aspect-ratio:16 / 9;min-height:240px;background:var(--color-stage);overflow:hidden;border-radius:3px;cursor:pointer}.cs-stage:focus-visible{outline:2px solid var(--color-accent-orange);outline-offset:4px}.cs-screen-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-stage);color:#fff;font-family:"Source Serif Pro",Georgia,serif;z-index:1;padding:0 24px;text-align:center}.cs-reveal{font-style:italic;font-size:clamp(2.5rem,7vw,5.5rem);line-height:1;margin:0;font-weight:400;letter-spacing:-.02em;color:#fff}.cs-curtain{position:absolute;top:-1px;bottom:-1px;width:52%;line-height:0;font-size:0;transition:transform 1.6s cubic-bezier(.45,0,.2,1);will-change:transform;z-index:2}.cs-curtain--left{left:0}.cs-curtain--right{right:0}.cs-curtain svg{display:block;width:100%;height:100%;vertical-align:bottom}.cs-curtain--right svg{transform:scaleX(-1);transform-origin:center}.cs-curtain:after{content:"";position:absolute;top:0;bottom:0;width:48px;pointer-events:none;z-index:3}.cs-curtain--left:after{right:0;background:linear-gradient(to right,#0000,#0006 60%,#000000b8)}.cs-curtain--right:after{left:0;background:linear-gradient(to left,#0000,#0006 60%,#000000b8)}.cs-stage[data-curtains=open] .cs-curtain--left{transform:translate(-100%)}.cs-stage[data-curtains=open] .cs-curtain--right{transform:translate(100%)}.cs-footlights{position:absolute;left:-4%;right:-4%;bottom:-2%;height:42%;pointer-events:none;z-index:3;background:radial-gradient(ellipse 70% 100% at 50% 100%,rgba(255,185,115,.6) 0%,rgba(255,150,80,.32) 25%,rgba(255,120,60,.12) 55%,transparent 80%);transition:opacity 1.4s ease-out;mix-blend-mode:screen}.cs-stage[data-curtains=open] .cs-footlights{opacity:.18}.cs-marquee{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:10;font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#ffdcb4eb;text-shadow:0 1px 2px rgba(0,0,0,.5);transition:opacity .7s ease-out;pointer-events:none}.cs-stage[data-curtains=open] .cs-marquee{opacity:0}.cs-intro-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;background:#000;z-index:1}.cs-mute-button{position:absolute;bottom:16px;right:16px;z-index:3;padding:6px 10px;background:#0009;color:#faf9f5;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:500;cursor:pointer;opacity:0;transition:opacity .2s ease}.cs-stage[data-curtains=open] .cs-mute-button,.cs-stage:hover .cs-mute-button{opacity:1}.cs-mobile-play{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;align-items:center;justify-content:center;background:#0006;color:#faf9f5;border:none;font-size:64px;cursor:pointer;transition:background-color .2s ease}.cs-mobile-play:hover{background:#00000080}@media (hover: hover) and (pointer: fine){.cs-mobile-play{display:none}}.cs-carousel-section{padding:96px max(24px,4vw);background:var(--color-light)}.cs-carousel-shell{position:relative;max-width:1280px;margin:0 auto}.cs-carousel-rail{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 0 24px;scrollbar-width:none}.cs-carousel-rail::-webkit-scrollbar{display:none}.cs-carousel-card{flex:0 0 320px;height:280px;padding:48px;background:var(--color-light);border:1px solid var(--color-light-gray);border-radius:8px;scroll-snap-align:center;display:flex;align-items:center;justify-content:center;text-align:center;font-style:italic;font-size:1.5rem;font-family:"Source Serif Pro",Georgia,serif;color:var(--color-dark);transition:transform .2s ease,box-shadow .2s ease}.cs-carousel-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #14141314}.cs-carousel-chevron{position:absolute;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--color-mid-gray);cursor:pointer;padding:12px;transition:color .2s ease;font-size:24px;line-height:1}.cs-carousel-chevron:hover{color:var(--color-dark)}.cs-carousel-chevron--prev{left:-40px}.cs-carousel-chevron--next{right:-40px}.cs-cta{padding:120px max(24px,4vw);text-align:center;background:var(--color-light);scroll-margin-top:80px}.cs-cta-inner{max-width:640px;margin:0 auto}.cs-cta h2{font-size:2.5rem;margin:0 0 24px;color:var(--color-dark)}.cs-cta-body{font-family:"Source Serif Pro",Georgia,serif;font-style:italic;font-size:1.125rem;color:var(--color-dark);max-width:50ch;margin:0 auto 40px}.cs-cta-form{display:flex;flex-direction:column;gap:16px;align-items:stretch;text-align:left}.cs-cta-row{display:flex;gap:12px;flex-wrap:wrap}.cs-cta-input{flex:1 1 240px;padding:14px;border-radius:6px;border:1px solid var(--color-mid-gray);background:var(--color-light);color:var(--color-dark);font-family:Inter,system-ui,sans-serif;font-size:1rem}.cs-cta-submit{padding:14px 24px;border-radius:6px;border:none;background:var(--color-accent-orange);color:#fff;font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:1rem;cursor:pointer;transition:filter .2s ease,opacity .2s ease}.cs-cta-submit:disabled{opacity:.5;cursor:not-allowed}.cs-cta-submit:not(:disabled):hover{filter:brightness(.95)}.cs-consent-list{display:flex;flex-direction:column;gap:12px;margin-top:8px;text-align:left}.cs-consent-item{display:flex;gap:12px;align-items:flex-start;font-family:Inter,system-ui,sans-serif;font-size:.9375rem;color:var(--color-dark);cursor:pointer;line-height:1.4}.cs-consent-item input{margin-top:3px;flex-shrink:0;accent-color:var(--color-accent-orange)}.cs-cta-success{font-family:"Source Serif Pro",Georgia,serif;font-style:italic;color:var(--color-mid-gray);font-size:1.25rem;text-align:center}.cs-footer{margin-top:auto;padding:80px max(24px,4vw);background:var(--color-light-gray);border-top:1px solid var(--color-mid-gray)}.cs-footer-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;align-items:start}.cs-footer-wordmark{font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:1.25rem;color:var(--color-dark);margin:0 0 8px}.cs-footer-tagline{font-family:"Source Serif Pro",Georgia,serif;font-style:italic;color:var(--color-dark);margin:0}.cs-footer-socials{display:flex;gap:16px;justify-content:center}.cs-footer-social{color:var(--color-mid-gray);display:inline-flex;align-items:center;justify-content:center;transition:color .2s ease}.cs-footer-social:hover,.cs-footer-social:focus-visible{color:var(--color-dark)}.cs-footer-contact{text-align:right}.cs-footer-contact h4{font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:1rem;color:var(--color-dark);margin:0 0 8px}.cs-footer-contact a{color:var(--color-dark);text-decoration:underline}.cs-footer-copyright{margin-top:8px;color:var(--color-mid-gray);font-size:.875rem}@media (max-width: 1023px){.cs-carousel-chevron--prev{left:0}.cs-carousel-chevron--next{right:0}}@media (max-width: 767px){.cs-page-hero{padding:48px 16px 32px}.cs-page-hero-grid{grid-template-columns:1fr;gap:24px}.cs-page-hero-headline{font-size:clamp(2rem,9vw,3.25rem)}.cs-page-hero-body{margin-top:0}.cs-hero{padding:24px 16px 64px}.cs-theatre{padding:10px}.cs-stage{cursor:default}.cs-carousel-chevron{display:none}.cs-cta{padding:80px 16px}.cs-cta-submit{width:100%}.cs-consent-list{gap:16px}.cs-footer-grid{grid-template-columns:1fr;gap:32px;text-align:center}.cs-footer-socials{justify-content:center}.cs-footer-contact{text-align:center}.cs-nav-buttons .cs-nav-btn{padding:6px 12px;font-size:.875rem}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.cs-curtain,.cs-footlights,.cs-marquee{transition:none!important}.cs-stage[data-curtains=open] .cs-curtain--left{transform:translate(-100%)}.cs-stage[data-curtains=open] .cs-curtain--right{transform:translate(100%)}.cs-carousel-card,.cs-cta-submit,.cs-footer-social,.cs-nav,.cs-nav-btn{transition:none!important}}.flipai-app{display:flex;min-height:100vh}body:has(.flipai-app){overflow:hidden;background:#0b0b0d}.fa-nav{width:266px;flex:0 0 266px;height:100vh;position:sticky;top:0;background:var(--bg-elevated);border-right:1px solid var(--border);display:flex;flex-direction:column}.fa-nav-brand{display:flex;align-items:center;gap:11px;padding:1.625rem 1.5rem 1.875rem;font-family:var(--font-serif);font-size:21px;font-weight:700;letter-spacing:-.01em;color:var(--fg-strong);text-decoration:none}.fa-nav-logo{width:34px;height:34px;flex:none;display:block}.fa-nav-items{display:flex;flex-direction:column;flex:1;overflow-y:auto}.fa-nav-link{padding:.6875rem 1.375rem;color:var(--fg-muted);text-decoration:none;border-left:2px solid transparent;font-size:15px;font-weight:500;letter-spacing:.005em;transition:background .15s ease,color .15s ease}.fa-nav-link:hover{background:#f5f3ef0d;text-decoration:none}.fa-nav-link.is-active{color:var(--fg-strong);border-left-color:var(--accent);background:#f5f3ef0f;font-weight:600}.fa-pipe{--pipe-zn: #9aa2a8;--pipe-zn-hi: #cfd6da;--pipe-zn-dk: #5c6369;list-style:none;margin:0;padding:4px 10px 0 8px;position:relative}.fa-pipe:before{content:"";position:absolute;left:12px;top:8px;bottom:8px;width:18px;border-radius:9px;background:linear-gradient(90deg,var(--pipe-zn-dk) 0%,var(--pipe-zn) 30%,var(--pipe-zn-hi) 50%,var(--pipe-zn) 70%,var(--pipe-zn-dk) 100%);box-shadow:inset 0 0 5px #0000008c,0 0 12px #9aa2a82e}.fa-pipe:after{content:"";position:absolute;left:18px;top:10px;bottom:10px;width:6px;border-radius:3px;background:repeating-linear-gradient(180deg,transparent 0 24px,rgba(200,112,63,.85) 24px 31px);animation:fa-pipe-drip 2.6s linear infinite;opacity:.5;pointer-events:none}@keyframes fa-pipe-drip{0%{background-position:0 0}to{background-position:0 55px}}.fa-pipe-stage{position:relative;padding:0 0 4px 54px;min-height:62px}.fa-pipe-stage:before{content:"";position:absolute;left:27px;top:22px;width:22px;height:11px;border-radius:0 6px 6px 0;background:linear-gradient(180deg,var(--pipe-zn-hi),var(--pipe-zn) 55%,var(--pipe-zn-dk));box-shadow:inset 0 -2px 3px #0006}.fa-pipe-stage:after{content:"";position:absolute;left:8px;top:17px;width:26px;height:21px;border-radius:6px;background:linear-gradient(180deg,#b8c0c6,#7d858c);box-shadow:inset 0 2px 3px #ffffff59,inset 0 -3px 4px #00000073}.fa-pipe-link{display:block;text-decoration:none;color:var(--fg-muted);padding:10px 10px 9px;border-radius:10px;border:1px solid transparent}.fa-pipe-link:hover{background:#f5f3ef0d;border-color:var(--border);text-decoration:none}.fa-pipe-stagename{display:flex;align-items:center;gap:7px;font-size:.92rem;font-weight:600;color:var(--fg);letter-spacing:.005em}.fa-pipe-sub{display:block;color:var(--fg-subtle);font-size:.7rem;margin-top:2px;line-height:1.35}.fa-pipe-count{margin-left:auto;background:#f5f3ef14;color:var(--fg-muted);font-size:.72rem;font-weight:600;padding:1px 8px;border-radius:99px}.fa-pipe-stage.is-here .fa-pipe-link{background:var(--accent-subtle);border-color:var(--accent-border);box-shadow:0 0 16px var(--accent-tint-16)}.fa-pipe-stage.is-here .fa-pipe-stagename{color:var(--accent)}.fa-pipe-stage.is-here:after{background:linear-gradient(180deg,#ffd989,#c9a44a);box-shadow:0 0 10px var(--accent-tint-35),inset 0 2px 3px #ffffff80}.fa-pipe-badge{display:inline-flex;align-items:center;gap:5px;margin-top:5px;font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--bg-elevated);background:var(--accent);padding:2px 9px;border-radius:99px}.fa-pipe-badge:before{content:"▶";font-size:.55rem}.fa-pipe-drop{position:absolute;left:46px;top:33px;width:8px;height:8px;border-radius:50% 50% 60% 60%;background:var(--accent);box-shadow:0 0 7px var(--accent-tint-35);animation:fa-pipe-fall 1.4s ease-in infinite;pointer-events:none}@keyframes fa-pipe-fall{0%{transform:translateY(0);opacity:1}80%{transform:translateY(22px);opacity:.9}to{transform:translateY(29px);opacity:0}}.fa-pipe-stage.is-done .fa-pipe-stagename:after{content:"✓";color:#7fc97f;font-size:.85rem}.fa-pipe-stage.is-ahead .fa-pipe-link{opacity:.62}.fa-pipe-stage.is-ahead .fa-pipe-link:hover{opacity:1}.fa-pipe-bucket{margin:2px 10px 0 14px;padding:10px 8px 12px 52px;position:relative;color:var(--fg-subtle);font-size:.74rem}.fa-pipe-bucket:before{content:"";position:absolute;left:2px;top:0;width:38px;height:26px;border:3px solid #5c6369;border-top:none;border-radius:0 0 12px 12px;box-shadow:inset 0 -4px 7px var(--accent-tint-16)}.fa-pipe-bucket-link{color:var(--accent);font-weight:600;text-decoration:none}.fa-pipe-bucket-link:hover{text-decoration:underline}.fa-pipe-utility{margin-top:14px;padding-top:10px;border-top:1px solid var(--border);display:flex;flex-direction:column}@media (prefers-reduced-motion: reduce){.fa-pipe:after,.fa-pipe-drop{animation:none}}.fa-nav-foot{padding:1.125rem 1.5rem 0;margin-top:.5rem;border-top:1px solid var(--border);display:flex;align-items:center;gap:11px}.fa-nav-avatar{width:32px;height:32px;flex:none;border-radius:50%;background:var(--accent-tint-16);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;margin-top:1.125rem}.fa-nav-userblock{display:flex;flex-direction:column;line-height:1.25;margin-top:1.125rem}.fa-nav-user{font-size:15px;color:var(--fg);font-weight:500}.fa-nav-logout{font-size:15px;color:var(--fg-subtle);background:none;border:none;padding:0;text-align:left;cursor:pointer}.fa-nav-logout:hover{color:var(--accent);text-decoration:underline}.fa-main{flex:1;min-width:0;background:var(--bg-gradient);overflow-y:auto;height:100vh}.fa-main::-webkit-scrollbar{width:9px;height:9px}.fa-main::-webkit-scrollbar-thumb{background:#f5f3ef1f;border-radius:9px}.fa-main::-webkit-scrollbar-track{background:transparent}.fa-main-inner{max-width:1140px;padding:54px 64px 90px;margin:0}@keyframes flUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes flFade{0%{opacity:0}to{opacity:1}}@keyframes faBlinkOk{0%{border-color:var(--success);box-shadow:0 0 0 2px var(--success-subtle)}to{border-color:var(--border-strong);box-shadow:none}}@keyframes faBlinkBad{0%{border-color:var(--danger);box-shadow:0 0 0 2px var(--danger-subtle)}to{border-color:var(--border-strong);box-shadow:none}}.fa-blink-ok{animation:faBlinkOk .45s ease}.fa-blink-bad{animation:faBlinkBad .45s ease}@media (prefers-reduced-motion: reduce){.fa-blink-ok,.fa-blink-bad{animation:none}}@media (prefers-reduced-motion: no-preference){.fa-main-inner>*{animation:flUp .4s ease both}}.fa-main-inner--full{max-width:none;padding:0;margin:0}.fa-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:1rem;font-weight:500;border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.fa-btn--primary{background:var(--accent);color:var(--fg-inverse)}.fa-btn--primary:hover{background:var(--accent-hover);text-decoration:none}.fa-btn--outline{background:transparent;color:var(--fg);border-color:var(--border-strong)}.fa-btn--outline:hover{background:var(--bg-subtle);text-decoration:none}.fa-btn--pill{border-radius:var(--radius-pill, 999px);padding:var(--space-sm) var(--space-lg)}.fa-btn--ghost-light{background:transparent;color:var(--fg-inverse);border-color:#faf9f580}.fa-btn--ghost-light:hover{background:#faf9f51a;text-decoration:none}.fa-btn--cream{background:var(--fg-inverse);color:var(--bg-dark)}.fa-btn--cream:hover{background:#ece9e1;text-decoration:none}.fa-pill{display:inline-flex;align-items:center;font-size:.9rem;font-weight:500;padding:.1875rem .625rem;border-radius:var(--radius-pill, 999px);white-space:nowrap}.fa-pill--success{background:var(--success-subtle);color:var(--success)}.fa-pill--warning{background:var(--warning-subtle);color:var(--warning)}.fa-pill--danger{background:var(--danger-subtle);color:var(--danger)}.fa-card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:border-color .15s ease}.fa-card[role=button]:hover{border-color:var(--accent-border)}.fa-table{width:100%;border-collapse:collapse;font-size:1rem}.fa-table th,.fa-table td{text-align:left;padding:.625rem .75rem;border-bottom:1px solid var(--border)}.fa-table td.num,.fa-table th.num{text-align:right;font-variant-numeric:tabular-nums}.fa-table tfoot td{font-weight:600;border-bottom:none;border-top:2px solid var(--border-strong)}.fa-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}.fa-gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-md);transition:transform .15s ease}.fa-gallery img:hover{transform:scale(1.02)}.fa-two-up{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl)}.fa-three-up{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.fa-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}@media (max-width: 900px){.fa-two-up,.fa-three-up,.fa-grid-2{grid-template-columns:1fr}.fa-gallery{grid-template-columns:repeat(2,1fr)}.fa-hero-cols{grid-template-columns:1fr!important}.fa-nav{display:none}.fa-main-inner{padding:var(--space-xl) var(--space-lg) var(--space-2xl)}}.fa-textarea{width:100%;min-height:400px;background:var(--surface-input);font-family:var(--font-sans);font-size:1rem;line-height:1.6;padding:var(--space-md);border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--fg);resize:vertical}.fa-textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fa-dropzone{background:var(--surface-card);border:2px dashed var(--border-strong);border-radius:var(--radius-lg);padding:var(--space-2xl);text-align:center;color:var(--fg-muted);transition:border-color .12s ease,background .12s ease}.fa-dropzone.is-drag{border-color:var(--accent);background:var(--accent-subtle)}.fa-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#050507a8;display:flex;align-items:center;justify-content:center;z-index:50}.fa-modal{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-xl);padding:var(--space-2xl);text-align:center;max-width:380px}.fa-section+.fa-section{margin-top:var(--space-3xl)}.fa-section h2{margin-bottom:var(--space-sm)}.fa-record-address:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}.fa-record-address:hover span:first-child{color:var(--accent-hover)}[data-testid=candidate-preview-toggle]:focus-visible{outline:3px dashed var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}.fa-carousel-track{display:flex;position:relative;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;gap:var(--space-sm);border-radius:var(--radius-md);cursor:grab;scrollbar-width:none}.fa-carousel-track::-webkit-scrollbar{display:none}.fa-carousel-track:active{cursor:grabbing}.fa-carousel-track:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.fa-carousel-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start}.fa-noscrollbar{scrollbar-width:none}.fa-noscrollbar::-webkit-scrollbar{display:none}.mc{--mc-scale: 1;--mc-radius: 8px;font-family:IBM Plex Sans,system-ui,sans-serif;color:var(--mc-fg);background:var(--mc-bg);border:1px solid var(--mc-border);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-height:70vh}.mc[data-mc-theme=dark]{--mc-bg: #0b1116;--mc-panel: #12191f;--mc-strip: #0e161d;--mc-card: #141e26;--mc-card-dim: #111a21;--mc-row-alt: #0d141a;--mc-border: #2b3947;--mc-border-soft: #22303c;--mc-border-strong: #3a4a5a;--mc-fg: #eef4fa;--mc-fg-soft: #c8d8e6;--mc-fg-mid: #a9bccd;--mc-fg-dim: #8ba0b3;--mc-accent: #7fe8ff;--mc-accent-ink: #06212b;--mc-accent-dim: #0f2a33;--mc-blue: #6fb7ff;--mc-green: #3ddc84;--mc-green-soft: #7ff0ae;--mc-green-bg: #0e2418;--mc-green-border: #2c5c3f;--mc-red: #ff6b6b;--mc-red-soft: #ff8f8f;--mc-red-bg: #3a1416;--mc-red-border: #5a3a3a;--mc-amber: #ffb020;--mc-amber-soft: #ffd591;--mc-amber-bg: #2e2410;--mc-amber-border: #6b5a1f;--mc-gold: #ffd75e;--mc-purple: #b18cff;--mc-crit: #ff9f43;--mc-baseline: #5a6b7c}.mc[data-mc-theme=light]{--mc-bg: #f2f4f7;--mc-panel: #ffffff;--mc-strip: #e9edf2;--mc-card: #ffffff;--mc-card-dim: #f6f8fa;--mc-row-alt: #eef1f5;--mc-border: #b6c2ce;--mc-border-soft: #cdd6df;--mc-border-strong: #98a6b4;--mc-fg: #0b1218;--mc-fg-soft: #2a333c;--mc-fg-mid: #41505e;--mc-fg-dim: #5b6a78;--mc-accent: #0a5a73;--mc-accent-ink: #ffffff;--mc-accent-dim: #d9eef5;--mc-blue: #0b5fbf;--mc-green: #0f7a3d;--mc-green-soft: #0f7a3d;--mc-green-bg: #e4f6ec;--mc-green-border: #86c9a4;--mc-red: #b3161d;--mc-red-soft: #8f1116;--mc-red-bg: #fdeaea;--mc-red-border: #d99a9d;--mc-amber: #8a5a00;--mc-amber-soft: #7a4d00;--mc-amber-bg: #fff4d6;--mc-amber-border: #b07600;--mc-gold: #7a4d00;--mc-purple: #6b3fd4;--mc-crit: #b35a00;--mc-baseline: #7d8b99}.mc *{box-sizing:border-box}.mc button{font-family:inherit}.mc :is(button,a,[tabindex]):focus-visible{outline:3px solid var(--mc-accent);outline-offset:2px;border-radius:4px}.mc .mono{font-family:IBM Plex Mono,ui-monospace,monospace}.mc .mc-kicker{font:600 calc(10px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.14em;color:var(--mc-fg-dim)}.mc-header{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 18px;background:var(--mc-panel);border-bottom:1px solid var(--mc-border)}.mc-wordmark{font:700 calc(15px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.14em;color:var(--mc-fg);white-space:nowrap}.mc-wordmark small{font:500 calc(11px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.12em;color:var(--mc-accent);margin-left:9px}.mc-vr{width:1px;height:26px;background:var(--mc-border)}.mc-project-btn{display:flex;align-items:center;gap:9px;min-height:44px;padding:0 13px;background:var(--mc-card);border:1px solid var(--mc-border-strong);border-radius:var(--mc-radius);color:var(--mc-fg);font:600 calc(13px * var(--mc-scale)) / 1.2 "IBM Plex Sans",sans-serif;cursor:pointer;max-width:min(46vw,420px)}.mc-project-btn:hover{border-color:var(--mc-accent)}.mc-project-btn .mc-caret{color:var(--mc-accent)}.mc-project-btn .mc-project-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mc-halted-pill{display:flex;align-items:center;gap:8px;padding:9px 14px;min-height:44px;background:var(--mc-red-bg);border:2px solid var(--mc-red);border-radius:7px;text-decoration:none;cursor:pointer}.mc-halted-pill b{font:700 calc(13px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;color:var(--mc-red-soft)}.mc-halted-pill span{font:600 calc(12px * var(--mc-scale)) / 1 "IBM Plex Sans",sans-serif;letter-spacing:.06em;color:var(--mc-red-soft)}.mc-seg{display:flex;gap:3px;padding:3px;background:var(--mc-card);border:1px solid var(--mc-border);border-radius:var(--mc-radius)}.mc-seg button{min-height:40px;padding:0 14px;background:transparent;border:0;border-radius:6px;font:500 calc(13px * var(--mc-scale)) / 1 "IBM Plex Sans",sans-serif;color:var(--mc-fg-soft);cursor:pointer}.mc-seg button:hover{background:var(--mc-border-soft);color:var(--mc-fg)}.mc-seg button[aria-pressed=true],.mc-seg button.mc-seg-on{background:var(--mc-accent);color:var(--mc-accent-ink);font-weight:600}.mc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 14px;background:var(--mc-card);border:1px solid var(--mc-border-strong);border-radius:7px;font:600 calc(12.5px * var(--mc-scale)) / 1.2 "IBM Plex Sans",sans-serif;color:var(--mc-fg-soft);cursor:pointer}.mc-btn:hover{border-color:var(--mc-accent);color:var(--mc-fg)}.mc-btn--primary{background:var(--mc-accent);border-color:var(--mc-accent);color:var(--mc-accent-ink);font-weight:700}.mc-btn--primary:hover{filter:brightness(1.1);color:var(--mc-accent-ink)}.mc-btn--danger{background:transparent;border:1px solid var(--mc-red-border);color:var(--mc-red-soft)}.mc-btn--danger:hover{background:var(--mc-red-bg);border-color:var(--mc-red);color:var(--mc-red-soft)}.mc-btn:disabled{opacity:.55;cursor:not-allowed}.mc-strip{display:flex;align-items:stretch;flex-wrap:wrap;background:var(--mc-strip);border-bottom:1px solid var(--mc-border)}.mc-strip>div{padding:12px 16px;border-right:1px solid var(--mc-border-soft)}.mc-strip-title{font:600 calc(10px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.14em;color:var(--mc-accent);margin-bottom:10px}.mc-counts{flex:0 1 200px;min-width:170px}.mc-counts-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:3px 0}.mc-counts-row span:first-child{font:400 calc(12px * var(--mc-scale)) / 1.4 "IBM Plex Sans",sans-serif;color:var(--mc-fg-mid)}.mc-counts-row span:last-child{font:700 calc(14px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;color:var(--mc-fg)}.mc-streams{flex:1 1 380px;min-width:300px}.mc-streams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.mc-stream{padding:8px 10px;background:var(--mc-card);border:1px solid var(--mc-border);border-left:4px solid var(--mc-border-strong);border-radius:6px;min-width:0}.mc-stream--busy{border-left-color:var(--mc-blue)}.mc-stream--free{border-left-color:var(--mc-green)}.mc-stream-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.mc-stream-head b{font:700 calc(11px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.08em;color:var(--mc-fg)}.mc-stream-status{font:700 calc(9.5px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.1em;padding:4px 6px;border-radius:3px}.mc-stream-job{margin-top:6px;font:500 calc(11.5px * var(--mc-scale)) / 1.3 "IBM Plex Sans",sans-serif;color:var(--mc-fg-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mc-stream-meta{margin-top:3px;font:400 calc(10.5px * var(--mc-scale)) / 1.2 "IBM Plex Mono",monospace;color:var(--mc-fg-dim)}.mc-holds{flex:1 1 320px;min-width:280px;border-right:0!important}.mc-hold-row{display:flex;align-items:center;gap:8px;padding:3px 0;min-width:0}.mc-hold-key{font:700 calc(11px * var(--mc-scale)) / 1.3 "IBM Plex Mono",monospace;color:var(--mc-fg);flex:none;min-width:66px;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;background:none;border:0;padding:2px;text-align:left}.mc-hold-key:hover{text-decoration-color:var(--mc-accent);color:var(--mc-accent)}.mc-hold-why{font:400 calc(11.5px * var(--mc-scale)) / 1.3 "IBM Plex Sans",sans-serif;color:var(--mc-fg-mid);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mc-tag{display:inline-flex;align-items:center;gap:5px;font:700 calc(9.5px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.06em;padding:5px 7px;border-radius:4px;white-space:nowrap}.mc-tag--halt{background:var(--mc-red);color:#fff}.mc[data-mc-theme=dark] .mc-tag--halt{color:#2b0708}.mc-tag--auth{background:var(--mc-bg);color:var(--mc-gold);border:1.5px solid var(--mc-gold)}.mc-tag--notest{background:var(--mc-amber-bg);color:var(--mc-amber-soft);border:1.5px solid var(--mc-amber-border)}.mc-tag--dep,.mc-tag--queued{background:var(--mc-border-soft);color:var(--mc-fg-soft)}.mc-tag--plain{background:var(--mc-border-soft);color:var(--mc-fg-soft);font-weight:500}.mc-state-pill{display:inline-flex;align-items:center;gap:5px;font:600 calc(10px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.06em;padding:4px 7px;border-radius:3px;border:1.5px solid currentColor;white-space:nowrap}.mc-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 18px;border-bottom:1px solid var(--mc-border)}.mc-legend{display:flex;align-items:center;gap:14px;padding:8px 14px;background:var(--mc-card);border:1px solid var(--mc-border);border-radius:var(--mc-radius);flex-wrap:wrap}.mc-legend span{display:flex;align-items:center;gap:6px;font:500 calc(11px * var(--mc-scale)) / 1 "IBM Plex Sans",sans-serif;color:var(--mc-fg-soft)}.mc-legend .sw-crit{width:22px;height:9px;border-radius:2px;border:1.5px solid var(--mc-crit);background:repeating-linear-gradient(115deg,var(--mc-crit) 0 3px,transparent 3px 6px)}.mc-legend .sw-ms{width:11px;height:11px;background:var(--mc-purple);transform:rotate(45deg)}.mc-legend .sw-today{width:3px;height:14px;background:var(--mc-accent)}.mc ::-webkit-scrollbar{height:16px;width:14px}.mc ::-webkit-scrollbar-track{background:var(--mc-strip);border:1px solid var(--mc-border-soft)}.mc ::-webkit-scrollbar-thumb{background:var(--mc-border-strong);border-radius:8px;border:3px solid var(--mc-strip)}.mc ::-webkit-scrollbar-thumb:hover{background:var(--mc-accent)}.mc .mc-gantt-scroll,.mc .mc-board,.mc .mc-list-scroll{scrollbar-width:auto;scrollbar-color:var(--mc-border-strong) var(--mc-strip)}.mc-gantt-scroll{overflow:auto;max-height:calc(100vh - 240px);min-height:340px}.mc-gantt{min-width:fit-content;position:relative}.mc-gantt-head{display:flex;background:var(--mc-strip);border-bottom:2px solid var(--mc-border);position:sticky;top:0;z-index:6}.mc-gantt-left{flex:none;width:var(--mc-left-w, 430px);padding:9px 16px;border-right:1px solid var(--mc-border);position:sticky;left:0;z-index:5;background:var(--mc-strip)}.mc-panbar{display:flex;align-items:center;gap:8px;padding:9px 18px;border-bottom:1px solid var(--mc-border-soft);background:var(--mc-panel)}.mc-gantt-cols{flex:none;display:flex;position:relative}.mc-gantt-col{flex:none;padding:9px 0 9px 8px;font:600 calc(10.5px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;color:var(--mc-fg-dim);border-left:1px solid var(--mc-border-soft);white-space:nowrap;overflow:hidden}.mc-gantt-body{position:relative}.mc-today-line{position:absolute;top:0;bottom:0;width:2px;background:var(--mc-accent);z-index:3;pointer-events:none}.mc-today-tag{position:absolute;top:4px;z-index:4;padding:3px 6px;background:var(--mc-accent);border-radius:3px;font:700 calc(9.5px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.08em;color:var(--mc-accent-ink);pointer-events:none;white-space:nowrap}.mc-grow{display:flex;border-bottom:1px solid var(--mc-border-soft);background:var(--mc-bg)}.mc-grow--alt{background:var(--mc-row-alt)}.mc-grow--phase{background:var(--mc-card);border-top:1px solid var(--mc-border);border-bottom:1px solid var(--mc-border);min-height:44px;align-items:center}.mc-grow--phase .mc-grow-left{background:var(--mc-card)}.mc-grow-left{flex:none;width:var(--mc-left-w, 430px);padding:7px 16px;border-right:1px solid var(--mc-border);overflow:hidden;position:sticky;left:0;z-index:4;background:inherit}.mc-grow-track{flex:none;position:relative;min-height:52px}.mc-grow--phase .mc-grow-track{min-height:44px}.mc-grow-title{display:flex;align-items:baseline;gap:8px;min-width:0}.mc-grow-key{font:700 calc(11.5px * var(--mc-scale)) / 1.2 "IBM Plex Mono",monospace;color:var(--mc-accent);flex:none;background:none;border:0;padding:0;cursor:pointer}.mc-grow-key:hover{text-decoration:underline}.mc-grow-name{font:500 calc(13px * var(--mc-scale)) / 1.2 "IBM Plex Sans",sans-serif;color:var(--mc-fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mc-grow-flags{display:flex;align-items:center;gap:6px;margin-top:6px;min-width:0;flex-wrap:wrap}.mc-grow-sub{font:400 calc(10.5px * var(--mc-scale)) / 1.3 "IBM Plex Sans",sans-serif;color:var(--mc-fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mc-bar{position:absolute;top:12px;height:26px;border-radius:5px;border:2px solid var(--mc-fg-dim);background:transparent;cursor:pointer;padding:0}.mc-bar:hover{filter:brightness(1.25)}.mc-bar--crit{box-shadow:0 0 0 2px var(--mc-bg),0 0 0 4px var(--mc-crit)}.mc-bar-label{position:absolute;top:15px;display:flex;align-items:center;gap:6px;white-space:nowrap;pointer-events:none;font:700 calc(10.5px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;color:var(--mc-fg-soft)}.mc-nodates{position:absolute;top:12px;display:inline-flex;align-items:center;gap:7px;min-height:26px;padding:0 9px;border-radius:5px;border:2px dashed var(--mc-amber);background:var(--mc-amber-bg);font:600 calc(10.5px * var(--mc-scale)) / 1 "IBM Plex Sans",sans-serif;color:var(--mc-amber-soft);cursor:pointer}.mc-nodates u{font:700 calc(10px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;color:var(--mc-amber)}.mc-phasebar{position:absolute;top:17px;height:8px;border-radius:4px;background:var(--mc-baseline);opacity:.75}.mc-ms-diamond{position:absolute;top:16px;width:13px;height:13px;background:var(--mc-purple);border:1.5px solid var(--mc-fg);transform:rotate(45deg)}.mc-gantt-foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:11px 18px;background:var(--mc-panel);border-top:1px solid var(--mc-border);font:400 calc(11.5px * var(--mc-scale)) / 1.4 "IBM Plex Sans",sans-serif;color:var(--mc-fg-dim)}.mc-board{display:flex;gap:12px;padding:16px;align-items:stretch;overflow:auto;max-height:calc(100vh - 230px);min-height:340px}.mc-col{flex:none;width:236px;background:var(--mc-card-dim);border:1.5px solid var(--mc-border);border-radius:9px;padding:10px;display:flex;flex-direction:column;max-height:100%}.mc-col .mc-col-cards{overflow-y:auto;flex:1;min-height:0;padding-right:2px}.mc-col--build{border-color:var(--mc-amber-border);background:color-mix(in srgb,var(--mc-amber-bg) 40%,var(--mc-card-dim))}.mc-col--tools{border-style:dashed;opacity:.85}.mc-col-head{display:flex;align-items:center;gap:7px}.mc-col-head .dot{width:11px;height:11px;border-radius:50%;flex:none;border:1.5px solid var(--mc-fg)}.mc-col-head b{font:700 calc(12.5px * var(--mc-scale)) / 1.2 "IBM Plex Sans",sans-serif;color:var(--mc-fg)}.mc-col-head span{font:700 calc(12px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;color:var(--mc-fg-mid)}.mc-col-note{margin-top:7px;font:400 calc(10.5px * var(--mc-scale)) / 1.4 "IBM Plex Sans",sans-serif;color:var(--mc-fg-mid)}.mc-col-cards{margin-top:10px;display:flex;flex-direction:column;gap:9px}.mc-card{background:var(--mc-card);border:1.5px solid var(--mc-border-strong);border-left:5px solid var(--mc-border-strong);border-radius:7px;padding:9px 10px;text-align:left;width:100%;cursor:pointer;color:inherit}.mc-card:hover{border-color:var(--mc-accent)}.mc-card-top{display:flex;align-items:baseline;gap:7px}.mc-card-key{font:700 calc(11px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;color:var(--mc-accent)}.mc-card-prio{font:700 calc(9.5px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.05em;color:var(--mc-fg-mid)}.mc-card-title{margin-top:6px;font:500 calc(12.5px * var(--mc-scale)) / 1.35 "IBM Plex Sans",sans-serif;color:var(--mc-fg);text-wrap:pretty}.mc-card-tags{margin-top:8px;display:flex;flex-wrap:wrap;gap:5px}.mc-card-foot{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:6px;padding-top:8px;border-top:1px solid var(--mc-border-soft);font:400 calc(10px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;color:var(--mc-fg-dim)}.mc-card-move{margin-top:8px;width:100%;min-height:38px;background:transparent;border:1px dashed var(--mc-border-strong);border-radius:6px;font:600 calc(11px * var(--mc-scale)) / 1 "IBM Plex Sans",sans-serif;color:var(--mc-fg-soft);cursor:pointer}.mc-card-move:hover{border-color:var(--mc-accent);color:var(--mc-fg)}.mc-list-scroll{overflow:auto;max-height:calc(100vh - 280px);padding:0 0 8px}.mc-list{width:100%;border-collapse:collapse;min-width:900px}.mc-list th{position:sticky;top:0;z-index:2}.mc-list th{text-align:left;padding:10px 12px;font:600 calc(10px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.1em;color:var(--mc-fg-dim);border-bottom:2px solid var(--mc-border);background:var(--mc-strip);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.mc-list td{padding:9px 12px;border-bottom:1px solid var(--mc-border-soft);font:400 calc(12.5px * var(--mc-scale)) / 1.4 "IBM Plex Sans",sans-serif;color:var(--mc-fg-soft);vertical-align:middle;white-space:nowrap}.mc-list td.mc-td-title{white-space:normal;min-width:260px}.mc-list tr:hover td{background:var(--mc-row-alt)}.mc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:60;display:flex;justify-content:flex-end}.mc-panel{width:min(960px,100vw);height:100%;overflow-y:auto;background:var(--mc-bg);border-left:1px solid var(--mc-border);color:var(--mc-fg);font-family:IBM Plex Sans,system-ui,sans-serif}.mc-panel-head{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--mc-panel);border-bottom:1px solid var(--mc-border)}.mc-haltbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 18px;background:var(--mc-red-bg);border-bottom:2px solid var(--mc-red);font:500 calc(12.5px * var(--mc-scale)) / 1.4 "IBM Plex Sans",sans-serif;color:var(--mc-red-soft)}.mc-panel-body{display:flex;align-items:flex-start;gap:18px;padding:18px;flex-wrap:wrap}.mc-panel-main{flex:1 1 480px;min-width:300px;display:flex;flex-direction:column;gap:18px}.mc-panel-rail{flex:none;width:280px;display:flex;flex-direction:column;gap:12px}@media (max-width: 760px){.mc-panel-rail{width:100%}}.mc-testblock{border:2px solid var(--mc-green);border-radius:9px;background:var(--mc-green-bg);overflow:hidden}.mc-testblock--missing{border-color:var(--mc-amber-border);background:var(--mc-amber-bg)}.mc-testblock-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--mc-green-border);font:700 calc(11px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.12em;color:var(--mc-green-soft)}.mc-testblock--missing .mc-testblock-head{border-color:var(--mc-amber-border);color:var(--mc-amber-soft)}.mc-testblock-body{padding:12px 14px;font:400 calc(13px * var(--mc-scale)) / 1.7 "IBM Plex Mono",monospace;color:var(--mc-fg-soft);white-space:pre-wrap}.mc-box{border:1px solid var(--mc-border);border-radius:9px;overflow:hidden}.mc-box-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;background:var(--mc-card);border-bottom:1px solid var(--mc-border);font:600 calc(10px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.14em;color:var(--mc-fg-soft)}.mc-box-body{padding:12px 14px}.mc-desc{font:400 calc(14px * var(--mc-scale)) / 1.7 "IBM Plex Sans",sans-serif;color:var(--mc-fg-soft);overflow-wrap:anywhere}.mc-desc :is(h1,h2,h3,h4){color:var(--mc-fg);margin:.8em 0 .3em;font-size:calc(15px * var(--mc-scale))}.mc-desc pre,.mc-desc code{font-family:IBM Plex Mono,monospace;background:var(--mc-card);border-radius:3px;padding:1px 5px;white-space:pre-wrap}.mc-desc a{color:var(--mc-accent)}.mc-comment{display:flex;gap:11px}.mc-comment-av{width:30px;height:30px;border-radius:6px;background:var(--mc-card);color:var(--mc-accent);border:1px solid var(--mc-accent);font:700 calc(10.5px * var(--mc-scale)) / 30px "IBM Plex Mono",monospace;text-align:center;flex:none}.mc-comment-body{flex:1;min-width:0;background:var(--mc-card-dim);border:1px solid var(--mc-border);border-left:3px solid var(--mc-accent);border-radius:7px;padding:9px 11px}.mc-comment-text{margin-top:7px;font:400 calc(13px * var(--mc-scale)) / 1.65 "IBM Plex Mono",monospace;color:var(--mc-fg-soft);overflow-wrap:anywhere}.mc-comment-text :is(p,div){margin:0 0 4px}.mc .mc-comment-text :is(code,pre),.mc .mc-desc :is(code,pre){background:var(--mc-border-soft);color:var(--mc-accent);border:1px solid var(--mc-border-strong);border-radius:4px;padding:2px 6px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:calc(12px * var(--mc-scale));overflow-wrap:anywhere;word-break:break-all}.mc .mc-comment-text :is(b,strong){color:var(--mc-fg)}.mc .mc-comment-text a{color:var(--mc-accent)}.mc-field label{display:block;font:600 calc(9.5px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.14em;color:var(--mc-fg-dim);margin-bottom:6px}.mc-input,.mc-select,.mc-textarea{width:100%;min-height:44px;padding:8px 11px;background:var(--mc-card);border:1px solid var(--mc-border-strong);border-radius:7px;color:var(--mc-fg);font:500 calc(12.5px * var(--mc-scale)) / 1.4 "IBM Plex Sans",sans-serif}.mc-textarea{min-height:90px;resize:vertical;font-family:IBM Plex Mono,monospace}.mc-input:focus,.mc-select:focus,.mc-textarea:focus{outline:3px solid var(--mc-accent);outline-offset:1px}.mc-note{padding:10px 12px;border-radius:7px;font:400 calc(11px * var(--mc-scale)) / 1.5 "IBM Plex Sans",sans-serif}.mc-note--warn{background:var(--mc-amber-bg);border:1px solid var(--mc-amber-border);color:var(--mc-amber-soft)}.mc-note--info{background:var(--mc-card-dim);border:1px solid var(--mc-border);border-left:3px solid var(--mc-blue);color:var(--mc-fg-soft)}.mc-note--danger{background:var(--mc-red-bg);border:1px dashed var(--mc-red-border);color:var(--mc-red-soft)}.mc-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:80;display:flex;align-items:center;justify-content:center;padding:16px}.mc-confirm{width:min(560px,100%);background:var(--mc-bg);border:1px solid var(--mc-border);border-radius:10px;color:var(--mc-fg);font-family:IBM Plex Sans,system-ui,sans-serif;box-shadow:0 8px 40px #00000080}.mc-confirm-head{padding:14px 18px;border-bottom:1px solid var(--mc-border);font:600 calc(15px * var(--mc-scale)) / 1.3 "IBM Plex Sans",sans-serif}.mc-confirm-body{padding:16px 18px;font:400 calc(13px * var(--mc-scale)) / 1.6 "IBM Plex Sans",sans-serif;color:var(--mc-fg-soft)}.mc-confirm-foot{display:flex;gap:10px;justify-content:flex-end;padding:14px 18px;border-top:1px solid var(--mc-border)}.mc-empty{padding:40px 18px;text-align:center;color:var(--mc-fg-dim);font:400 calc(13px * var(--mc-scale)) / 1.6 "IBM Plex Sans",sans-serif}.mc-menu{position:absolute;z-index:70;min-width:300px;max-width:min(92vw,460px);max-height:70vh;overflow-y:auto;background:var(--mc-bg);border:1px solid var(--mc-border);border-radius:10px;box-shadow:0 8px 40px #00000080;padding:12px}.mc-menu-item{display:flex;align-items:center;gap:11px;width:100%;text-align:left;padding:11px 12px;background:var(--mc-card-dim);border:1px solid var(--mc-border);border-radius:8px;color:var(--mc-fg);font:600 calc(13px * var(--mc-scale)) / 1.2 "IBM Plex Sans",sans-serif;cursor:pointer;margin-top:7px}.mc-menu-item:hover{border-color:var(--mc-accent)}.mc-menu-item small{display:block;margin-top:4px;font:400 calc(10.5px * var(--mc-scale)) / 1.2 "IBM Plex Mono",monospace;color:var(--mc-fg-dim)}.mc-menu-item.mc-menu-item--current{border:1.5px solid var(--mc-accent)}.mc-card-lane{font:700 calc(9.5px * var(--mc-scale)) / 1 "IBM Plex Mono",monospace;letter-spacing:.04em;color:var(--mc-blue);background:var(--mc-accent-dim);border:1px solid var(--mc-border-strong);border-radius:5px;padding:1px 6px;white-space:nowrap}@media (max-width: 540px){.mc{min-height:60vh;border-radius:8px}.mc-header{gap:8px;padding:10px 12px}.mc-vr{display:none}.mc-project-btn{max-width:100%}.mc-toolbar{padding:8px 12px;gap:8px;flex-wrap:wrap}.mc-strip{flex-direction:column}.mc-strip>div{border-right:0;border-bottom:1px solid var(--mc-border-soft)}.mc-counts,.mc-streams,.mc-holds{flex:1 1 auto;min-width:0}.mc-streams-grid{grid-template-columns:1fr}.mc-board{flex-direction:column;overflow:visible;max-height:none;padding:12px}.mc-col{width:100%;max-height:none}.mc-col .mc-col-cards{overflow-y:visible}.mc-panel-body{padding:12px;gap:12px}.mc-panel-rail{width:100%}.mc-btn,.mc-card-move,.mc-select,.mc-input{min-height:40px}}@media (max-width: 380px){.mc-wordmark small{display:none}.mc-header{gap:6px;padding:8px 10px}.mc-card-top{flex-wrap:wrap}}.infra{background:var(--bg);color:var(--fg);min-height:100%;padding:2.5rem 2.5rem 3rem;font-family:var(--font-sans)}.infra h1,.infra h2,.infra h3{font-family:var(--font-sans);font-weight:600;letter-spacing:-.01em;color:var(--fg-strong)}.infra__header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1rem}.infra__title{margin:0;font-size:1.5rem}.infra__subtitle{margin:0;font-size:.9rem;color:var(--accent)}.infra__clock{display:flex;flex-direction:column;align-items:center;text-align:center;flex:0 0 auto;white-space:nowrap;background:#0a0f0a;border:1px solid #1d2a1d;border-radius:10px;padding:.5rem 1.1rem .55rem;box-shadow:inset 0 0 14px #0009}.infra__clock-time{font-family:DSEG7,ui-monospace,SF Mono,Consolas,Courier New,monospace;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-size:2.6rem;font-weight:700;line-height:1;letter-spacing:.06em;color:#39ff14;text-shadow:0 0 6px rgba(57,255,20,.65),0 0 14px rgba(57,255,20,.35)}.infra__clock-time--down{color:#ff5b5b;text-shadow:0 0 6px rgba(255,91,91,.6)}.infra__clock-label{font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:.7rem;letter-spacing:.04em;color:#4caf50;margin-top:.3rem;text-transform:uppercase}.infra__clock-label--warn{color:#ffb300;font-weight:700}.infra__clock-label--down{color:#ff5b5b;font-weight:700}.infra__cap{margin-bottom:.3rem}.infra__cap-row{display:grid;grid-template-columns:2.6rem 1fr;align-items:center;gap:.4rem;margin-bottom:.2rem}.infra__cap-label{font-size:.68rem;color:var(--fg-muted);font-weight:600}.infra__cap-track{position:relative;height:12px;border-radius:6px;background:#f5f3ef1a;border:1px solid var(--border-strong);overflow:hidden}.infra__cap-fill{height:100%;transition:width .4s ease}.infra__cap-fill--green{background:#34c759}.infra__cap-fill--orange{background:#ff9500}.infra__cap-fill--red{background:#ff3b30}.infra__cap-text{font-size:.7rem;color:var(--fg-muted);font-variant-numeric:tabular-nums;margin-top:.15rem}.infra__cap-warn{font-size:.7rem;color:var(--danger);font-weight:700;margin-top:.15rem}.infra__cap-offline{font-size:.75rem;color:var(--fg-subtle);font-weight:600}.infra__cell--muted{color:var(--fg-subtle);text-align:center}.infra__nas-gauge{margin-bottom:.4rem}.infra__nas-bar{height:10px;border-radius:5px;background:#f5f3ef1a;overflow:hidden;border:1px solid var(--border-strong)}.infra__nas-fill{height:100%;transition:width .4s ease}.infra__nas-fill--green{background:#34c759}.infra__nas-fill--orange{background:#ff9500}.infra__nas-fill--red{background:#ff3b30}.infra__nas-stats{font-size:.72rem;color:var(--fg-muted);margin-top:.2rem;font-variant-numeric:tabular-nums}.infra__nas-warn{font-size:.72rem;color:var(--danger);font-weight:600;margin-top:.15rem}.infra__nas-offline{font-size:.75rem;color:var(--fg-subtle);font-weight:600}.infra__loading,.infra__error{background:var(--surface-card);border:1px solid var(--border);border-radius:8px;padding:1rem 1.25rem;font-family:var(--font-sans)}.infra__error{color:var(--danger);border-color:var(--danger);background:var(--danger-subtle)}.infra__roles-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1rem;font-family:var(--font-sans);font-size:.8rem}.infra__roles-label{color:var(--accent);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-right:.2rem}.infra__role-chip{background:var(--bg-subtle);border:1px solid var(--border);border-radius:999px;padding:.1rem .55rem}.infra__connections{margin-bottom:1.25rem}.infra__conn-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.infra__conn-card{background:var(--surface-card);border:1px solid var(--border);border-radius:8px;padding:1rem 1.25rem}.infra__conn-card h3{margin:0 0 .4rem;font-family:var(--font-sans);font-size:1rem}.infra__conn-hint{margin:0 0 .75rem;font-family:var(--font-sans);font-size:.78rem;color:var(--fg-muted);line-height:1.4}.infra__conn-card label{display:flex;flex-direction:column;gap:.2rem;font-family:var(--font-sans);font-size:.78rem;color:var(--fg);margin-bottom:.6rem}.infra__conn-card input[type=text],.infra__conn-card input[type=password]{font:inherit;font-family:var(--font-mono);font-size:.82rem;padding:.4rem .5rem;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface-input);color:var(--fg)}.infra__conn-check{flex-direction:row!important;align-items:center;gap:.4rem!important}.infra__conn-actions{display:flex;gap:.5rem;margin-top:.25rem}.infra__conn-msg{margin-top:.75rem;font-family:var(--font-sans);font-size:.82rem;color:var(--fg-muted)}.infra__conn-vault{margin-top:1rem}.infra__cred-list{list-style:none;margin:0 0 .75rem;padding:0;display:flex;flex-direction:column;gap:.4rem}.infra__cred-item{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.5rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-subtle);font-family:var(--font-sans);font-size:.8rem}.infra__cred-meta{color:var(--fg-muted)}.infra__cred-secret{margin-left:.5rem;font-family:var(--font-mono);color:var(--fg-subtle)}.infra__cred-notes{margin-top:.2rem;color:var(--fg-muted);font-size:.75rem}.infra__cred-add{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.infra__cred-add input{font:inherit;font-family:var(--font-sans);font-size:.8rem;padding:.4rem .5rem;border:1px solid var(--border-strong);border-radius:6px;flex:1 1 9rem;min-width:7rem;background:var(--surface-input);color:var(--fg)}.infra__build-panel{margin-bottom:1.25rem;border:1px solid var(--border);border-radius:8px;background:#0f172a;color:#e2e8f0;padding:.75rem 1rem}.infra__build-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}.infra__build-head strong{flex:1}.infra__build-badge{font-size:.7rem;padding:.1rem .55rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.infra__build-badge--pending{background:#475569;color:#fff}.infra__build-badge--running{background:#d97706;color:#fff}.infra__build-badge--succeeded{background:#16a34a;color:#fff}.infra__build-badge--failed{background:#dc2626;color:#fff}.infra__build-log{max-height:340px;overflow:auto;background:#0b1220;color:#cbd5e1;font-family:var(--font-mono);font-size:.72rem;padding:.6rem;border-radius:6px;white-space:pre-wrap;margin:0}.infra__btn--build{background:#1d4ed8;color:#fff;border-color:#1d4ed8;margin-right:.3rem}.infra__diagram{margin-bottom:1.25rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-card);padding:1rem 1.25rem;font-family:var(--font-sans)}.infra__diag-head{display:flex;align-items:baseline;gap:.6rem;margin-bottom:.6rem}.infra__diag-sub{font-size:.78rem;color:var(--fg-subtle);flex:1}.infra__diag-legend{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem}.infra__diag-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.8rem}.infra__diag-grouplbl{font-size:.75rem;color:var(--fg-muted);margin-right:.3rem}.infra__diag-hosts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;margin-bottom:.8rem}.infra__diag-host{border:1px solid var(--border-strong);border-radius:8px;padding:.5rem .6rem;background:var(--bg-subtle)}.infra__diag-host--down{opacity:.5}.infra__diag-host-title{font-weight:600;font-size:.82rem;margin-bottom:.4rem}.infra__diag-vms{display:flex;flex-wrap:wrap;gap:.4rem}.infra__diag-empty{color:var(--fg-subtle)}.infra__diag-chip{display:inline-flex;flex-direction:column;gap:.05rem;border-radius:6px;padding:.25rem .5rem;font-size:.75rem;border:1.5px solid transparent}.infra__diag-name{font-weight:600}.infra__diag-ip{font-family:var(--font-mono);font-size:.68rem;opacity:.8}.infra__diag--confirmed{background:#16a34a;color:#fff}.infra__diag--unconfirmed{background:#dcfce7;color:#14532d;border-style:dashed;border-color:#4ade80}.infra__diag--planned{background:#fef9c3;color:#713f12;border-style:dotted;border-color:#d97706}.infra__diag--drift{background:#e5e7eb;color:#374151}.infra__diag--backbone{background:#1f2937;color:#fff}.infra__diag--decommissioning{background:#1c1c1c;color:#fff}.infra__diag-household{margin-top:.4rem;padding:.5rem .75rem;border-radius:8px;background:var(--bg-subtle);color:var(--fg-muted);font-size:.82rem;display:inline-block}.infra__table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface-card)}.infra__table{border-collapse:collapse;width:100%;min-width:1280px;font-size:.88rem}.infra__table thead th{text-align:left;font-family:var(--font-sans);font-weight:600;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;padding:.6rem .65rem;background:var(--bg-subtle);border-bottom:1px solid var(--border);color:var(--accent);white-space:nowrap}.infra__table tbody td{padding:.45rem .5rem;border-bottom:1px solid var(--border);vertical-align:top;font-family:var(--font-sans);font-size:.88rem}.infra__table tbody tr:hover{background:var(--bg-subtle)}.infra__cell{position:relative}.infra__cell input,.infra__cell select,.infra__cell textarea{width:100%;border:1px solid transparent;background:transparent;font:inherit;color:inherit;padding:.3rem .4rem;border-radius:4px;resize:vertical;box-sizing:border-box}.infra__cell input:focus,.infra__cell select:focus,.infra__cell textarea:focus{outline:none;border-color:var(--accent);background:var(--surface-input);box-shadow:0 0 0 2px var(--accent-tint-16)}.infra__cell--num input{font-variant-numeric:tabular-nums}.infra__table thead th:nth-child(5),.infra__table thead th:nth-child(6),.infra__table thead th:nth-child(7),.infra__cell--num{width:5rem}.infra__cell--num input{max-width:5rem}.infra__table thead th:nth-child(8),.infra__table tbody td:nth-child(8){min-width:150px}.infra__table thead th:nth-child(12),.infra__comment{width:36%;min-width:320px}.infra__comment textarea{width:100%}.infra__cell-error{margin-top:.25rem;font-family:var(--font-sans);font-size:.75rem;color:var(--danger);background:var(--danger-subtle);border:1px solid var(--danger);padding:.25rem .4rem;border-radius:4px}.infra__cell-suggestion{margin-top:.25rem;font-family:var(--font-sans);font-size:.78rem;background:var(--accent-subtle);border:1px solid var(--accent);padding:.4rem .5rem;border-radius:4px;display:flex;flex-direction:column;gap:.3rem}.infra__suggestion-actions{display:flex;gap:.4rem}.infra__cell-spinner{margin-top:.25rem;font-family:var(--font-sans);font-size:.72rem;color:var(--fg-muted)}.infra__state{display:inline-block;padding:.25rem .55rem;border-radius:4px;font-family:var(--font-sans);font-size:.78rem;font-weight:600;color:#141413}.infra__state--Active{background:#4ade80}.infra__state--Planned{background:#fde047}.infra__state--Locked{background:#fb923c}.infra__state--Decommissioned{background:#9ca3af}.infra__state-select{width:100%;border:1px solid transparent;padding:.3rem .4rem;font:inherit;background:transparent;border-radius:4px;color:inherit;font-family:var(--font-sans);font-weight:600;font-size:.78rem}.infra__state-select option{color:#141413}.infra__cell select option{color:#141413;background:#fff}.infra__state-cell--Planned{background:#fde047;color:#141413}.infra__state-cell--Active{background:#4ade80;color:#141413}.infra__state-cell--Standby{background:#fb923c;color:#141413}.infra__state-cell--Production{background:#ef4444;color:#fff}.infra__state-cell--Decommissioning{background:#1c1c1c;color:#fff}.infra__state-cell--Decommissioned{background:#d4d4d4;color:#141413}.infra__state-cell--External{background:#2563eb;color:#fff}.infra__state-cell--Locked{background:#ef4444;color:#fff}.infra__phase-cell--building,.infra__phase-cell--installing{background:#3b82f6;color:#fff}.infra__phase-cell--checking_bricks{background:#fde047;color:#141413}.infra__phase-cell--needs_brick,.infra__phase-cell--failed,.infra__phase-cell--error{background:#dc2626;color:#fff}.infra__phase-cell--active{background:#16a34a;color:#fff}.infra__phase-badge{font-size:.72rem;font-weight:700;margin-bottom:.25rem;white-space:nowrap}.infra__phase-badge--pulse{animation:infra-pulse 1.1s ease-in-out infinite}@keyframes infra-pulse{0%,to{opacity:1}50%{opacity:.3}}.infra__row-toolbar{display:flex;flex-wrap:wrap;gap:.3rem}.infra__btn--warn{background:#d97706;color:#fff}.infra__input--invalid,.infra__input--invalid:focus{border-color:#dc2626!important;outline-color:#dc2626;background:#dc26261f}.infra__logviewer{background:#0b1220;color:#e5e7eb;border-radius:8px;width:min(900px,92vw);max-height:82vh;display:flex;flex-direction:column;padding:.75rem}.infra__logviewer-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.infra__logviewer-head strong{color:#fff}.infra__logviewer-search{flex:1;min-width:140px;padding:.3rem .5rem;border-radius:4px;border:1px solid #334155;background:#111827;color:#e5e7eb}.infra__logviewer-body{flex:1;overflow:auto;max-height:68vh}.infra__depends-chips{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center}.infra__chip{display:inline-flex;align-items:center;gap:.25rem;background:var(--bg-subtle);border:1px solid var(--border);border-radius:999px;padding:.1rem .45rem;font-family:var(--font-sans);font-size:.75rem}.infra__chip-remove{border:none;background:transparent;cursor:pointer;font-size:.85rem;line-height:1;color:var(--accent);padding:0}.infra__chip-add{border:1px dashed var(--border-strong);background:transparent;border-radius:999px;padding:.1rem .45rem;font-family:var(--font-sans);font-size:.75rem;cursor:pointer;color:inherit}.infra__usedby{font-family:var(--font-sans);font-size:.78rem;color:var(--fg-muted);display:inline-flex;flex-wrap:wrap;gap:.25rem}.infra__usedby-chip{background:transparent;border:1px solid var(--accent-border);color:var(--accent);border-radius:999px;padding:.05rem .4rem}.infra__comment textarea{min-width:240px;min-height:3.4rem;font-family:var(--font-sans);line-height:1.4}.infra__comment-source{margin-top:.2rem;font-family:var(--font-sans);font-size:.7rem;letter-spacing:.03em;text-transform:uppercase;color:var(--fg-subtle)}.infra__actions-row{margin-top:1.25rem;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.infra__poll-meta{font-family:var(--font-sans);font-size:.78rem;color:var(--fg-subtle)}.infra__reach{margin-top:.25rem;font-family:var(--font-sans);font-size:.72rem;font-weight:600;display:inline-block}.infra__reach--up{color:#22c55e}.infra__reach--down{color:#ef4444}.infra__reach--unknown{color:var(--fg-subtle)}.infra__btn{font-family:var(--font-sans);font-size:.85rem;border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--fg);padding:.45rem .85rem;border-radius:6px;cursor:pointer}.infra__btn:hover:not(:disabled){background:var(--bg-subtle)}.infra__btn:disabled{opacity:.5;cursor:not-allowed}.infra__btn--primary{background:var(--accent);border-color:var(--accent);color:var(--fg-inverse)}.infra__btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.infra__btn--danger{border-color:var(--danger);color:var(--danger);background:transparent;font-size:.78rem;padding:.3rem .6rem}.infra__btn--danger:hover:not(:disabled){background:var(--danger);color:#fff}.infra__btn--ghost{font-size:.78rem;padding:.3rem .6rem}.infra__nav{display:flex;gap:.6rem;align-items:center;padding:.6rem 1.5rem;background:var(--bg-elevated);border-bottom:1px solid var(--border-strong)}.infra__nav-link{font-family:var(--font-sans);font-size:.85rem;background:transparent;color:var(--fg);border:1px solid transparent;padding:.35rem .7rem;border-radius:6px;cursor:pointer}.infra__nav-link--active{border-color:var(--accent);color:var(--fg-strong)}.infra__nav-link:hover{background:var(--bg-subtle)}.infra__setup{padding:3rem 1.5rem;display:flex;justify-content:center;background:var(--bg);min-height:100%}.infra__setup-card{max-width:520px;width:100%;background:var(--surface-card);border:1px solid var(--border);border-radius:8px;padding:1.5rem 1.75rem;color:var(--fg);font-family:var(--font-sans)}.infra__setup-card h2{margin:0 0 .6rem;font-family:var(--font-sans)}.infra__setup-card p{margin:0 0 1rem;line-height:1.5}.infra__setup-card code{font-family:var(--font-mono);background:var(--bg-subtle);padding:.05rem .3rem;border-radius:3px;font-size:.85em}.infra__setup-label{display:flex;flex-direction:column;gap:.3rem;font-family:var(--font-sans);font-size:.85rem;margin-bottom:.75rem}.infra__setup-label input{padding:.55rem .7rem;font-family:var(--font-mono);font-size:.85rem;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface-input);color:var(--fg)}.infra__setup-error{background:var(--danger-subtle);border:1px solid var(--danger);color:var(--danger);font-family:var(--font-sans);padding:.4rem .6rem;border-radius:4px;font-size:.8rem;margin-bottom:.6rem}.infra__confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.infra__confirm-card{background:var(--bg-elevated);color:var(--fg);border:1px solid var(--border);border-radius:8px;padding:1.25rem 1.5rem;max-width:400px;font-family:var(--font-sans)}.infra__confirm-card h3{margin:0 0 .5rem;font-family:var(--font-sans)}.infra__confirm-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.infra__role-add{display:flex;gap:.3rem;margin-top:.3rem}.infra__role-add input{font:inherit;border:1px solid var(--border-strong);padding:.25rem .45rem;border-radius:4px;background:var(--surface-input);color:var(--fg)}.infra__delete-cell{padding-left:0!important;width:1%;white-space:nowrap}.bricks{padding:2.5rem 2.5rem 3rem;color:var(--fg);font-family:var(--font-sans);max-width:1080px;margin:0 auto}.bricks__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.bricks__title{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.01em}.bricks__loading,.bricks__error{padding:1rem 1.25rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-card)}.bricks__error{color:var(--danger);border-color:var(--danger);background:var(--danger-subtle)}.bricks__error--inline{margin-bottom:1rem;font-size:.85rem}.bricks__section{margin-bottom:.75rem}.bricks__section-head{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;padding:.6rem .9rem;font:inherit;font-weight:600;font-size:.92rem;cursor:pointer;color:var(--fg)}.bricks__chevron{display:inline-block;transition:transform .15s;font-size:.7rem;color:var(--accent)}.bricks__chevron.is-open{transform:rotate(90deg)}.bricks__count{margin-left:.5rem;background:var(--bg-subtle);border:1px solid var(--border);border-radius:999px;padding:0 .5rem;font-size:.75rem;font-weight:500}.bricks__rows{padding:.5rem .25rem .25rem}.bricks__empty{color:var(--fg-subtle);font-size:.85rem;padding:.5rem .65rem}.bricks__row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;padding:.6rem .65rem;border-bottom:1px solid var(--border)}.bricks__row:last-child{border-bottom:none}.bricks__row-main{display:flex;align-items:baseline;gap:.5rem;flex:1 1 14rem}.bricks__name{font-weight:600}.bricks__id{font-family:var(--font-mono);font-size:.78rem;color:var(--fg-subtle)}.bricks__row-meta{font-size:.78rem;color:var(--fg-muted);flex:1 1 16rem}.bricks__row-actions{display:flex;gap:.4rem}.bricks__btn{font:inherit;font-size:.8rem;padding:.35rem .7rem;border:1px solid var(--border-strong);border-radius:6px;background:var(--bg-elevated);cursor:pointer;color:var(--fg)}.bricks__btn:hover{background:var(--bg-subtle)}.bricks__btn:disabled{opacity:.5;cursor:default}.bricks__btn--primary{background:var(--accent);color:var(--fg-inverse);border-color:var(--accent)}.bricks__btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.bricks__link{background:none;border:none;padding:0;font:inherit;color:var(--accent);text-decoration:underline;cursor:pointer}.bricks__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:2rem;z-index:1000}.bricks__modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;padding:1.5rem 1.75rem;max-width:560px;width:100%;box-shadow:0 12px 40px #00000080}.bricks__modal--view{max-width:820px;max-height:85vh;display:flex;flex-direction:column}.bricks__modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.bricks__md{overflow:auto;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:1rem;font-family:var(--font-mono);font-size:.78rem;line-height:1.5;white-space:pre-wrap;margin:0}.bricks__modal-title{margin:0 0 .75rem;font-size:1.15rem}.bricks__modal-body{white-space:pre-wrap;font-size:.88rem;line-height:1.5;color:var(--fg-muted)}.bricks__fallback{margin-top:1rem}.bricks__seed{width:100%;height:8rem;font-family:var(--font-mono);font-size:.72rem;margin:.4rem 0}.bricks__modal-actions{display:flex;gap:.6rem;margin-top:1.25rem}
