@import "https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;500;600&display=swap";
:root{--color-primary:#00ed64;--color-primary-deep:#00b545;--color-primary-pressed:#008c34;--color-on-primary:#001e2b;--color-brand-green:#00ed64;--color-brand-green-dark:#00684a;--color-brand-green-mid:#00a35c;--color-brand-green-soft:#c3f0d2;--color-brand-teal-deep:#001e2b;--color-brand-teal:#003d4f;--color-brand-teal-mid:#00684a;--color-accent-purple:#7b3ff2;--color-accent-orange:#fa6e39;--color-accent-pink:#f06bb8;--color-accent-blue:#3d4f9f;--color-semantic-warning-bg:#fff8e0;--color-semantic-warning-text:#946f3f;--color-semantic-error:#cf4848;--color-semantic-error-bg:#fce8e8;--color-semantic-success:#00ed64;--color-canvas:#fff;--color-canvas-dark:#001e2b;--color-surface:#f9fbfa;--color-surface-soft:#f4f7f6;--color-surface-feature:#e3fcef;--color-card-bg:#fff;--color-hairline:#e1e5e8;--color-hairline-soft:#eceff1;--color-hairline-strong:#c1ccd6;--color-hairline-dark:#1c2d38;--color-ink:#001e2b;--color-charcoal:#1c2d38;--color-slate:#3d4f5b;--color-steel:#5c6c7a;--color-stone:#7c8c9a;--color-muted:#a8b3bc;--color-on-dark:#fff;--color-on-dark-muted:#a8b3bc;--spacing-xxs:4px;--spacing-xs:8px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:20px;--spacing-xl:24px;--spacing-xxl:32px;--spacing-xxxl:40px;--rounded-xs:4px;--rounded-sm:6px;--rounded-md:8px;--rounded-lg:12px;--rounded-xl:16px;--rounded-xxl:24px;--rounded-full:9999px;--shadow-subtle:#001e2b0a 0px 1px 2px 0px;--shadow-card:#001e2b0f 0px 4px 16px 0px;--shadow-card-hover:#001e2b1f 0px 8px 24px -2px;--shadow-modal:#001e2b40 0px 20px 48px -8px;--font-display:"Euclid Circular A", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-text:"Euclid Circular A", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"Source Code Pro", "SF Mono", Menlo, Consolas, monospace;--theme-transition:background-color .25s cubic-bezier(.4, 0, .2, 1), color .25s cubic-bezier(.4, 0, .2, 1), border-color .25s cubic-bezier(.4, 0, .2, 1), box-shadow .25s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--color-canvas:#000;--color-canvas-dark:#000;--color-surface:#09090b;--color-surface-soft:#121215;--color-surface-feature:#0d2818;--color-card-bg:#121215;--color-brand-teal-deep:#050505;--color-hairline:#222226;--color-hairline-soft:#18181c;--color-hairline-strong:#333338;--color-hairline-dark:#18181c;--color-ink:#fff;--color-charcoal:#f4f4f5;--color-slate:#a1a1aa;--color-steel:#71717a;--color-stone:#52525b;--color-muted:#3f3f46;--color-brand-green-soft:#052e16;--color-brand-green-dark:#00ed64;--color-semantic-warning-bg:#271d07;--color-semantic-warning-text:#fde047;--color-semantic-error-bg:#2d0a0a;--color-semantic-error:#ef4444;--shadow-card:#000c 0px 4px 16px 0px;--shadow-card-hover:#00ed641a 0px 8px 24px 0px;--shadow-modal:#000000e6 0px 20px 48px -4px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-canvas);color:var(--color-ink);font-family:var(--font-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:var(--theme-transition);font-size:16px;font-weight:400;line-height:1.55}a{color:inherit;text-decoration:none}.typo-hero{font-family:var(--font-display);letter-spacing:-1.5px;font-size:72px;font-weight:500;line-height:1.1}.typo-display-lg{font-family:var(--font-display);letter-spacing:-1px;font-size:56px;font-weight:500;line-height:1.15}.typo-h1{font-family:var(--font-display);letter-spacing:-.5px;font-size:48px;font-weight:500;line-height:1.2}.typo-h2{font-family:var(--font-display);letter-spacing:-.5px;font-size:36px;font-weight:500;line-height:1.25}.typo-h3{font-family:var(--font-display);font-size:28px;font-weight:500;line-height:1.3}.typo-h4{font-family:var(--font-display);font-size:22px;font-weight:500;line-height:1.35}.typo-h5{font-family:var(--font-display);font-size:18px;font-weight:600;line-height:1.4}.typo-subtitle{font-family:var(--font-display);font-size:18px;font-weight:400;line-height:1.5}.typo-body{font-family:var(--font-text);font-size:16px;font-weight:400;line-height:1.55}.typo-body-md{font-family:var(--font-text);font-size:16px;font-weight:500;line-height:1.55}.typo-body-sm{font-family:var(--font-text);font-size:14px;font-weight:400;line-height:1.5}.typo-body-sm-medium{font-family:var(--font-text);font-size:14px;font-weight:500;line-height:1.5}.typo-caption{font-family:var(--font-text);font-size:13px;font-weight:400;line-height:1.4}.typo-caption-bold{font-family:var(--font-text);font-size:13px;font-weight:600;line-height:1.4}.typo-micro{font-family:var(--font-text);font-size:12px;font-weight:500;line-height:1.4}.typo-micro-upper{font-family:var(--font-text);letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:600;line-height:1.4}.typo-code{font-family:var(--font-mono);font-size:14px;font-weight:400;line-height:1.55}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes modalEnter{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:none}}@keyframes pulseGlow{0%{box-shadow:0 0 #00ed6466}70%{box-shadow:0 0 0 8px #00ed6400}to{box-shadow:0 0 #00ed6400}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:.35s cubic-bezier(.16,1,.3,1) backwards fadeIn}.animate-slide-up{animation:.4s cubic-bezier(.16,1,.3,1) backwards slideUpFade}.animate-scale-in{animation:.25s cubic-bezier(.16,1,.3,1) backwards scaleIn}.pulse-glow{animation:2s infinite pulseGlow}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.brand-wordmark{object-fit:contain;object-position:left center;filter:saturate(1.2)brightness(1.18);width:auto;display:block}.brand-wordmark-home{height:clamp(54px,6vw,76px);margin:0 auto var(--spacing-xxl)}.brand-wordmark-login{height:48px}.brand-wordmark-sidebar{max-width:156px;height:38px}.login-brand{margin-bottom:var(--spacing-xxxl);align-items:center;display:inline-flex}.sidebar-brand-link{align-items:center;min-width:0;display:flex}.login-shell{background-color:var(--color-canvas);grid-template-columns:minmax(420px,42%) minmax(0,1fr);min-height:100dvh;display:grid}.login-hero{background:linear-gradient(145deg, var(--color-brand-teal-deep), var(--color-brand-teal-deep));min-width:0}@supports (color:color-mix(in lab, red, red)){.login-hero{background:linear-gradient(145deg, color-mix(in srgb, var(--color-brand-teal-deep) 92%, black), var(--color-brand-teal-deep))}}.login-hero{color:var(--color-on-dark);isolation:isolate;flex-direction:column;justify-content:center;padding:clamp(40px,7vw,112px);display:flex;position:relative;overflow:hidden}.login-hero:before{content:"";opacity:.16;pointer-events:none;background-image:linear-gradient(#ffffff14 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(to bottom right,#0000,#000 70%);mask-image:linear-gradient(to bottom right,#0000,#000 70%)}.login-hero-glow{aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#00ed6433 0%,#0000 68%);border-radius:50%;width:min(680px,92%);animation:5s ease-in-out infinite alternate loginGlow;position:absolute;bottom:-32%;right:-25%}.login-hero-content{z-index:1;max-width:460px;animation:.5s cubic-bezier(.16,1,.3,1) backwards fadeIn;position:relative}.login-form-panel{background-color:var(--color-canvas);justify-content:center;align-items:center;min-width:0;padding:clamp(32px,6vw,96px);display:flex}.login-form-card{width:min(100%,420px)}@keyframes loginGlow{0%{opacity:.7;transform:translate(-2%,2%)scale(.96)}to{opacity:1;transform:translate(3%,-3%)scale(1.06)}}@media (max-width:860px){.login-shell{grid-template-columns:1fr}.login-hero{min-height:260px;padding:var(--spacing-xxl);justify-content:flex-end}.login-brand{margin-bottom:var(--spacing-xl)!important}.login-form-panel{padding:clamp(32px, 9vw, 64px) var(--spacing-xl)}}@media (max-width:520px){.login-hero{min-height:220px;padding:var(--spacing-xl)}.login-hero .typo-h2{font-size:28px}.login-hero .typo-body{font-size:14px}.login-form-panel{padding:var(--spacing-xxl) var(--spacing-lg);align-items:flex-start}}.btn{justify-content:center;align-items:center;gap:var(--spacing-xs);font-family:var(--font-text);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;font-size:14px;font-weight:600;line-height:1.3;transition:transform .15s cubic-bezier(.4,0,.2,1),background-color .2s,border-color .2s,box-shadow .2s,color .2s;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:var(--color-brand-green);color:var(--color-on-primary);border-radius:var(--rounded-full);padding:10px 22px;box-shadow:0 2px 8px #00ed6440}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-deep);box-shadow:0 4px 14px #00ed6459}.btn-primary:active:not(:disabled){background-color:var(--color-primary-pressed)}.btn-primary:disabled{background-color:var(--color-hairline);color:var(--color-muted);box-shadow:none}.btn-secondary{color:var(--color-ink);border-radius:var(--rounded-full);border:1px solid var(--color-hairline-strong);background-color:#0000;padding:10px 22px}.btn-secondary:hover:not(:disabled){background-color:var(--color-surface-soft);border-color:var(--color-steel)}.btn-ghost{color:var(--color-ink);border-radius:var(--rounded-md);background-color:#0000;padding:8px 12px}.btn-ghost:hover:not(:disabled){background-color:var(--color-surface-soft)}.btn-danger{background-color:var(--color-semantic-error);color:#fff;border-radius:var(--rounded-full);padding:10px 22px}.btn-danger:hover:not(:disabled){background-color:#b83c3c}.btn-link{color:var(--color-brand-green-dark);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:500;transform:none!important}.btn-link:hover{text-decoration:underline}.btn-sm{padding:6px 14px;font-size:13px}.btn-lg{padding:14px 28px;font-size:16px}.btn-icon{border-radius:var(--rounded-md);justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.card{background-color:var(--color-card-bg);border-radius:var(--rounded-lg);padding:var(--spacing-xl);border:1px solid var(--color-hairline);box-shadow:var(--shadow-card);transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1),border-color .25s,background-color .25s}.card:hover{box-shadow:var(--shadow-card-hover)}.card-feature{padding:var(--spacing-xxl)}.card-dark{background-color:var(--color-brand-teal-deep);color:var(--color-on-dark);border:none}.card-surface{background-color:var(--color-surface);border:1px solid var(--color-hairline)}.badge{font-family:var(--font-text);border-radius:var(--rounded-full);white-space:nowrap;transition:var(--theme-transition);align-items:center;gap:6px;padding:4px 10px;font-size:13px;font-weight:600;line-height:1.4;display:inline-flex}.badge-green{background-color:var(--color-brand-green);color:var(--color-on-primary);border-radius:var(--rounded-sm);padding:2px 8px}.badge-green-soft{background-color:var(--color-brand-green-soft);color:var(--color-brand-green-dark)}.badge-purple{background-color:var(--color-accent-purple);color:#fff;border-radius:var(--rounded-sm);padding:2px 8px}.badge-orange{background-color:var(--color-accent-orange);color:#fff;border-radius:var(--rounded-sm);padding:2px 8px}.badge-teal{background-color:var(--color-brand-teal-deep);color:var(--color-brand-green);border:1px solid var(--color-hairline-dark)}.badge-error{background-color:var(--color-semantic-error-bg);color:var(--color-semantic-error)}.badge-warning{background-color:var(--color-semantic-warning-bg);color:var(--color-semantic-warning-text)}.badge-neutral{background-color:var(--color-surface-soft);color:var(--color-steel);border:1px solid var(--color-hairline)}.input{background-color:var(--color-canvas);color:var(--color-ink);font-family:var(--font-text);border-radius:var(--rounded-md);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-hairline-strong);outline:none;width:100%;height:44px;font-size:15px;font-weight:400;line-height:1.55;transition:border-color .2s,box-shadow .2s,background-color .2s,color .2s}.input:focus{border-color:var(--color-brand-green-dark);box-shadow:0 0 0 3px #00ed6433}.input::placeholder{color:var(--color-muted)}.input-error{border-color:var(--color-semantic-error)!important}.textarea{background-color:var(--color-canvas);color:var(--color-ink);font-family:var(--font-text);border-radius:var(--rounded-md);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-hairline-strong);resize:vertical;outline:none;width:100%;min-height:100px;font-size:15px;font-weight:400;line-height:1.55;transition:border-color .2s,box-shadow .2s,background-color .2s,color .2s}.textarea:focus{border-color:var(--color-brand-green-dark);box-shadow:0 0 0 3px #00ed6433}.textarea::placeholder{color:var(--color-muted)}.select{background-color:var(--color-canvas);color:var(--color-ink);font-family:var(--font-text);border-radius:var(--rounded-md);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-hairline-strong);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238fa3b0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;outline:none;width:100%;height:44px;padding-right:40px;font-size:15px;transition:border-color .2s,box-shadow .2s,background-color .2s,color .2s}.select:focus{border-color:var(--color-brand-green-dark);box-shadow:0 0 0 3px #00ed6433}.form-group{gap:var(--spacing-xs);flex-direction:column;display:flex}.form-label{font-family:var(--font-text);color:var(--color-ink);font-size:14px;font-weight:500;line-height:1.5}.form-hint{color:var(--color-steel);font-size:13px}.form-error{color:var(--color-semantic-error);font-size:13px}.pill-tabs{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.pill-tab{color:var(--color-steel);font-family:var(--font-text);border-radius:var(--rounded-full);padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-hairline);cursor:pointer;background-color:#0000;font-size:14px;font-weight:500;line-height:1.5;transition:all .2s cubic-bezier(.16,1,.3,1)}.pill-tab:hover{background-color:var(--color-surface-soft);color:var(--color-ink);transform:translateY(-1px)}.pill-tab-active{background-color:var(--color-ink);color:var(--color-canvas);border-color:var(--color-ink);box-shadow:0 2px 8px #00000026}.pill-tab-active:hover{background-color:var(--color-charcoal);color:var(--color-canvas)}.data-table{border-collapse:collapse;width:100%;font-family:var(--font-text);font-size:14px}.data-table thead{border-bottom:1px solid var(--color-hairline)}.data-table th{letter-spacing:1px;text-transform:uppercase;color:var(--color-steel);text-align:left;padding:var(--spacing-sm) var(--spacing-md);font-size:11px;font-weight:600}.data-table td{padding:var(--spacing-md);color:var(--color-ink);border-bottom:1px solid var(--color-hairline-soft);vertical-align:middle;transition:var(--theme-transition)}.data-table tbody tr{transition:background-color .15s}.data-table tbody tr:hover{background-color:var(--color-surface-soft)}.sidebar{background-color:var(--color-brand-teal-deep);width:260px;min-height:100vh;color:var(--color-on-dark);transition:var(--theme-transition);border-right:1px solid var(--color-hairline-dark);flex-direction:column;flex-shrink:0;display:flex}.sidebar-brand{padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);border-bottom:1px solid var(--color-hairline-dark)}.sidebar-nav{padding:var(--spacing-md) var(--spacing-sm);flex-direction:column;flex:1;gap:2px;display:flex}.sidebar-link{align-items:center;gap:var(--spacing-sm);padding:10px var(--spacing-md);border-radius:var(--rounded-md);color:var(--color-on-dark-muted);font-size:14px;font-weight:500;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.sidebar-link:hover{color:var(--color-on-dark);background-color:#ffffff14;transform:translate(2px)}.sidebar-link-active{color:var(--color-brand-green);background-color:#00ed641f;font-weight:600}.sidebar-section{letter-spacing:1px;text-transform:uppercase;color:var(--color-on-dark-muted);padding:var(--spacing-lg) var(--spacing-md) var(--spacing-xs);opacity:.8;font-size:11px;font-weight:600}.sidebar-user{padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--color-hairline-dark);align-items:center;gap:var(--spacing-sm);display:flex}.sidebar-avatar{border-radius:var(--rounded-full);background-color:var(--color-brand-green);width:36px;height:36px;color:var(--color-on-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;box-shadow:0 0 12px #00ed644d}.modal-overlay{-webkit-backdrop-filter:blur(8px);overscroll-behavior:contain;z-index:9999;isolation:isolate;background-color:#000000bf;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out backwards modalBackdropIn;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-content{background-color:var(--color-card-bg);border-radius:var(--rounded-lg);border:1px solid var(--color-hairline);width:100%;max-width:560px;min-height:0;max-height:min(100dvh - 3rem,680px);color:var(--color-ink);outline:none;flex-direction:column;margin:auto;animation:.28s cubic-bezier(.16,1,.3,1) backwards modalEnter;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.modal-form{width:100%;min-height:0;max-height:inherit;flex-direction:column;flex:auto;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--color-hairline);background-color:var(--color-card-bg);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.modal-body{overscroll-behavior:contain;scrollbar-gutter:stable;gap:var(--spacing-lg);flex-direction:column;flex:auto;min-height:0;padding:1.5rem;display:flex;overflow-y:auto}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--spacing-sm);border-top:1px solid var(--color-hairline);background-color:var(--color-surface-soft);flex-shrink:0;padding:1rem 1.5rem;display:flex}.stat-card{background-color:var(--color-card-bg);border-radius:var(--rounded-lg);padding:var(--spacing-xl);border:1px solid var(--color-hairline);box-shadow:var(--shadow-card);gap:var(--spacing-xs);flex-direction:column;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1);display:flex}.stat-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.stat-card-value{font-family:var(--font-display);letter-spacing:-.5px;font-size:36px;font-weight:500;line-height:1.25}.empty-state{padding:var(--spacing-xxxl);text-align:center;color:var(--color-steel);flex-direction:column;justify-content:center;align-items:center;display:flex}.spinner{border:2px solid var(--color-hairline);border-top-color:var(--color-brand-green);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}.spinner-lg{border-width:3px;width:32px;height:32px}.breadcrumb{align-items:center;gap:var(--spacing-xs);color:var(--color-steel);font-size:14px;display:flex}.breadcrumb a{color:var(--color-steel);transition:color .15s}.breadcrumb a:hover{color:var(--color-brand-green-dark)}.breadcrumb-separator{color:var(--color-muted)}.breadcrumb-current{color:var(--color-ink);font-weight:500}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);display:flex}.page-title{font-family:var(--font-display);color:var(--color-ink);font-size:28px;font-weight:500;line-height:1.3}.page-subtitle{color:var(--color-steel);margin-top:var(--spacing-xxs);font-size:16px}.file-upload{appearance:none;width:100%;color:inherit;font:inherit;border:2px dashed var(--color-hairline-strong);border-radius:var(--rounded-md);padding:var(--spacing-xl);justify-content:center;align-items:center;gap:var(--spacing-sm);cursor:pointer;text-align:center;background-color:var(--color-canvas);flex-direction:column;transition:border-color .2s,background-color .2s;display:flex}.file-upload:hover{border-color:var(--color-brand-green-mid);background-color:var(--color-surface-soft)}.file-upload svg{transition:transform .2s cubic-bezier(.16,1,.3,1),color .2s}.file-upload:hover svg{transform:translateY(-2px);color:var(--color-brand-green-dark)!important}.file-upload:focus-visible{outline:2px solid var(--color-brand-green-mid);outline-offset:3px}.file-preview-grid{gap:var(--spacing-sm);margin-top:var(--spacing-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.file-preview-card{border:1px solid var(--color-hairline);border-radius:var(--rounded-md);background-color:var(--color-surface-soft);min-width:0;animation:.24s cubic-bezier(.16,1,.3,1) backwards scaleIn;overflow:hidden}.file-preview-media{aspect-ratio:16/10;background-color:var(--color-canvas-dark);position:relative;overflow:hidden}.file-preview-media img,.file-preview-media video{object-fit:cover;width:100%;height:100%}.file-preview-remove{border-radius:var(--rounded-full);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;background-color:#000000ad;border:1px solid #ffffff47;justify-content:center;align-items:center;width:28px;height:28px;transition:transform .16s,background-color .16s;display:inline-flex;position:absolute;top:8px;right:8px}.file-preview-remove:hover{background-color:var(--color-semantic-error);transform:scale(1.08)}.file-preview-remove:focus-visible{outline-offset:2px;outline:2px solid #fff}.file-preview-details{min-width:0;padding:var(--spacing-xs) var(--spacing-sm);flex-direction:column;display:flex}.file-preview-name{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.file-preview-size{color:var(--color-stone);font-size:12px}@media (max-width:640px){.modal-overlay{align-items:flex-end;padding:12px}.modal-content{max-width:none;max-height:calc(100dvh - 24px);margin:auto 0 0}.modal-header,.modal-footer{padding:var(--spacing-sm) var(--spacing-md)}.modal-body{padding:var(--spacing-md)}.modal-footer{flex-wrap:wrap}.file-preview-grid{grid-template-columns:1fr}}.toast-viewport{top:var(--spacing-xl);right:var(--spacing-xl);z-index:20000;gap:var(--spacing-sm);pointer-events:none;flex-direction:column;width:min(380px,100vw - 32px);display:flex;position:fixed}.toast{align-items:start;gap:var(--spacing-sm);color:var(--color-ink);background-color:var(--color-card-bg);grid-template-columns:auto minmax(0,1fr) auto;padding:14px 14px 16px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.toast{background-color:color-mix(in srgb, var(--color-card-bg) 94%, transparent)}}.toast{border:1px solid var(--color-hairline);border-radius:var(--rounded-lg);box-shadow:var(--shadow-modal);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto;border-left-width:3px;animation:.3s cubic-bezier(.16,1,.3,1) backwards toastEnter}.toast-success{border-left-color:var(--color-brand-green-mid)}.toast-error{border-left-color:var(--color-semantic-error)}.toast p{padding-top:1px;font-size:14px;font-weight:500;line-height:1.45}.toast-icon{margin-top:1px}.toast-success .toast-icon{color:var(--color-brand-green-mid)}.toast-error .toast-icon{color:var(--color-semantic-error)}.toast-close{border-radius:var(--rounded-sm);width:26px;height:26px;color:var(--color-steel);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;transition:color .16s,background-color .16s;display:inline-flex}.toast-close:hover{color:var(--color-ink);background-color:var(--color-surface-soft)}.toast-close:focus-visible{outline:2px solid var(--color-brand-green-mid);outline-offset:2px}.toast-progress{transform-origin:0;opacity:.65;background-color:currentColor;height:2px;animation:linear forwards toastProgress;position:absolute;bottom:0;left:0;right:0}.toast-success .toast-progress{color:var(--color-brand-green-mid)}.toast-error .toast-progress{color:var(--color-semantic-error)}@keyframes toastEnter{0%{opacity:0;transform:translate(24px,-8px)scale(.96)}to{opacity:1;transform:none}}@keyframes toastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (max-width:640px){.toast-viewport{top:var(--spacing-sm);right:var(--spacing-sm);left:var(--spacing-sm);width:auto}}.trace-rail{flex-direction:column;gap:0;display:flex;position:relative}.trace-item{gap:var(--spacing-md);padding-bottom:var(--spacing-xl);display:flex;position:relative}.trace-item:last-child{padding-bottom:0}.trace-dot-col{flex-direction:column;flex-shrink:0;align-items:center;width:24px;display:flex}.trace-dot{border-radius:var(--rounded-full);background-color:var(--color-brand-green);border:2px solid var(--color-card-bg);width:14px;height:14px;box-shadow:0 0 0 2px var(--color-brand-green);z-index:1;flex-shrink:0}.trace-dot-muted{background-color:var(--color-hairline-strong);box-shadow:0 0 0 2px var(--color-hairline-strong)}.trace-line{background-color:var(--color-hairline);width:2px;margin-top:var(--spacing-xs);flex:1}.trace-content{flex:1}.report-media-grid{gap:var(--spacing-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.report-media-card{border:1px solid var(--color-hairline);border-radius:var(--rounded-lg);background:var(--color-surface-soft);min-width:0;overflow:hidden}.report-media-preview{aspect-ratio:16/10;background:#050505;position:relative;overflow:hidden}.report-media-preview>a{display:block;position:absolute;inset:0}.report-media-preview img{object-fit:contain;transition:transform .25s cubic-bezier(.16,1,.3,1)}.report-media-preview>a:hover img{transform:scale(1.025)}.report-media-preview video{object-fit:contain;width:100%;height:100%;display:block}.report-media-expand{right:var(--spacing-xs);bottom:var(--spacing-xs);border-radius:var(--rounded-full);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000ad;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:absolute}.report-media-footer{justify-content:space-between;gap:var(--spacing-sm);padding:10px var(--spacing-sm);color:var(--color-steel);font-size:12px;display:flex}.report-media-footer a{color:var(--color-brand-green-dark);flex-shrink:0;font-weight:600}@media (max-width:720px){.report-media-grid{grid-template-columns:1fr}}.ai-analysis-card{padding:0;overflow:hidden}.ai-analysis-header{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-hairline);background:radial-gradient(circle at 0 0, var(--color-brand-green), transparent 44%), var(--color-card-bg);display:flex}@supports (color:color-mix(in lab, red, red)){.ai-analysis-header{background:radial-gradient(circle at 0 0, color-mix(in srgb, var(--color-brand-green) 12%, transparent), transparent 44%), var(--color-card-bg)}}.ai-analysis-header>.badge{margin-left:auto}.ai-analysis-mark{border-radius:var(--rounded-md);width:38px;height:38px;color:var(--color-brand-green-dark);background:var(--color-brand-green-soft);border:1px solid var(--color-brand-green);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.ai-analysis-mark{border:1px solid color-mix(in srgb, var(--color-brand-green) 28%, transparent)}}.ai-analysis-eyebrow,.ai-section-label{color:var(--color-steel);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600;line-height:1.4}.ai-analysis-eyebrow{margin-bottom:2px}.ai-analysis-body{gap:var(--spacing-lg);padding:var(--spacing-xl);flex-direction:column;display:flex}.ai-analysis-overview{align-items:start;gap:var(--spacing-xl);grid-template-columns:minmax(0,1fr) auto;display:grid}.ai-analysis-overview .ai-section-label,.ai-panel-heading .ai-section-label{margin-bottom:var(--spacing-xxs);align-items:center;gap:6px;display:flex}.ai-analysis-title{color:var(--color-ink);font-size:22px;font-weight:600;line-height:1.3}.ai-urgency{min-width:112px;padding:var(--spacing-sm);border-radius:var(--rounded-md);background:var(--color-surface-soft);border:1px solid var(--color-hairline-soft)}.ai-urgency .badge{margin-top:var(--spacing-xs)}.ai-summary{padding:var(--spacing-md) var(--spacing-lg);border-left:3px solid var(--color-brand-green);border-radius:0 var(--rounded-md) var(--rounded-md) 0;color:var(--color-slate);background:var(--color-surface-feature)}.ai-summary .ai-section-label{margin-bottom:var(--spacing-xs);color:var(--color-brand-green-dark)}.ai-summary>p:last-child{font-size:14px;line-height:1.65}.ai-analysis-grid{gap:var(--spacing-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ai-analysis-panel,.ai-cost-section{padding:var(--spacing-lg);border:1px solid var(--color-hairline);border-radius:var(--rounded-lg);background:var(--color-surface-soft)}.ai-panel-heading{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);display:flex}.ai-panel-icon{border-radius:var(--rounded-md);flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.ai-panel-icon-cause{color:var(--color-accent-purple);background:var(--color-accent-purple)}@supports (color:color-mix(in lab, red, red)){.ai-panel-icon-cause{background:color-mix(in srgb, var(--color-accent-purple) 12%, transparent)}}.ai-panel-icon-action{color:var(--color-brand-green-dark);background:var(--color-brand-green-soft)}.ai-panel-icon-cost{color:var(--color-accent-orange);background:var(--color-accent-orange)}@supports (color:color-mix(in lab, red, red)){.ai-panel-icon-cost{background:color-mix(in srgb, var(--color-accent-orange) 12%, transparent)}}.ai-analysis-list{gap:var(--spacing-sm);counter-reset:ai-list;flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ai-analysis-list li{color:var(--color-slate);padding-left:23px;font-size:13px;line-height:1.55;position:relative}.ai-analysis-list li:before{content:"";border-radius:var(--rounded-full);background:var(--color-brand-green);width:7px;height:7px;box-shadow:0 0 0 3px var(--color-brand-green);position:absolute;top:8px;left:2px}@supports (color:color-mix(in lab, red, red)){.ai-analysis-list li:before{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-brand-green) 12%, transparent)}}.ai-analysis-list-numbered li{counter-increment:ai-list}.ai-analysis-list-numbered li:before{content:counter(ai-list);width:18px;height:18px;color:var(--color-accent-purple);background:var(--color-accent-purple);justify-content:center;align-items:center;font-size:10px;font-weight:700;display:inline-flex;top:0;left:0}@supports (color:color-mix(in lab, red, red)){.ai-analysis-list-numbered li:before{background:color-mix(in srgb, var(--color-accent-purple) 12%, transparent)}}.ai-analysis-list-numbered li:before{box-shadow:none}.ai-cost-grid{gap:var(--spacing-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ai-cost-item{padding:10px var(--spacing-sm);border-radius:var(--rounded-sm);color:var(--color-slate);background:var(--color-card-bg);border:1px solid var(--color-hairline-soft);font-size:13px;line-height:1.5}.ai-urgency-note{align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--rounded-md);color:var(--color-slate);background:var(--color-surface-soft);border:1px solid var(--color-hairline);font-size:13px;line-height:1.55;display:flex}.ai-urgency-note>svg{flex-shrink:0;margin-top:2px}.ai-urgency-note strong{color:var(--color-ink);margin-bottom:2px;display:block}.ai-urgency-note-error,.ai-urgency-note-orange{border-color:var(--color-accent-orange)}@supports (color:color-mix(in lab, red, red)){.ai-urgency-note-error,.ai-urgency-note-orange{border-color:color-mix(in srgb, var(--color-accent-orange) 38%, var(--color-hairline))}}.ai-urgency-note-warning{border-color:var(--color-semantic-warning-text)}@supports (color:color-mix(in lab, red, red)){.ai-urgency-note-warning{border-color:color-mix(in srgb, var(--color-semantic-warning-text) 38%, var(--color-hairline))}}.ai-urgency-note-green-soft{border-color:var(--color-brand-green)}@supports (color:color-mix(in lab, red, red)){.ai-urgency-note-green-soft{border-color:color-mix(in srgb, var(--color-brand-green) 38%, var(--color-hairline))}}@media (max-width:820px){.ai-analysis-grid,.ai-cost-grid,.ai-analysis-overview{grid-template-columns:1fr}.ai-urgency{width:100%}.ai-analysis-header,.ai-analysis-body{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}}.alert{border-radius:var(--rounded-md);padding:var(--spacing-sm) var(--spacing-md);align-items:flex-start;gap:var(--spacing-sm);transition:var(--theme-transition);font-size:14px;display:flex}.alert-error{background-color:var(--color-semantic-error-bg);color:var(--color-semantic-error);border:1px solid var(--color-semantic-error)}.alert-warning{background-color:var(--color-semantic-warning-bg);color:var(--color-semantic-warning-text);border:1px solid #e8d48a}.alert-success{background-color:var(--color-surface-feature);color:var(--color-brand-green-dark);border:1px solid var(--color-brand-green-mid)}.theme-toggle-btn{justify-content:center;align-items:center;gap:var(--spacing-xs);border-radius:var(--rounded-full);color:var(--color-on-dark);border:1px solid var(--color-hairline-dark);cursor:pointer;background-color:#ffffff14;padding:8px 12px;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.theme-toggle-btn:hover{border-color:var(--color-brand-green);color:var(--color-brand-green);background-color:#ffffff26}
