@tailwind base; @tailwind components; @tailwind utilities; @font-face { font-family: "Google Sans"; src: local("Google Sans"), local("GoogleSans-Regular"); font-display: swap; } @font-face { font-family: "Google Sans Text"; src: local("Google Sans Text"), local("GoogleSansText-Regular"); font-display: swap; } :root { color-scheme: light; font-family: "Google Sans", "Google Sans Text", "Product Sans", Roboto, -apple-system, BlinkMacSystemFont, sans-serif; background: #f8fbff; } * { box-sizing: border-box; } html { min-width: 320px; background: #f8fbff; } body { min-width: 320px; min-height: 100vh; margin: 0; background: #f8fbff; color: #1f252a; font-family: "Google Sans", "Google Sans Text", "Product Sans", Roboto, -apple-system, BlinkMacSystemFont, sans-serif; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; } button, input, select, textarea { font: inherit; } button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--primary, #9c4168); outline-offset: 3px; } ::selection { background: color-mix(in srgb, var(--primary-container, #ffd8e7) 68%, transparent); } ::-webkit-scrollbar { width: 10px; height: 10px; } ::-webkit-scrollbar-track { background: var(--surface-container-low, #fff0f5); } ::-webkit-scrollbar-thumb { background: color-mix(in srgb, var(--outline, #85737a) 42%, transparent); border: 3px solid var(--surface-container-low, #fff0f5); border-radius: 999px; } @layer components { .auth-layout { @apply mx-auto grid min-h-screen w-full max-w-6xl gap-6 px-4 py-8 lg:grid-cols-[1.05fr_0.95fr]; align-items: center; } .auth-hero { @apply min-w-0; } .auth-signal-grid { @apply mt-6 grid gap-3 sm:grid-cols-3; } .auth-panel { @apply border p-5 shadow-fridge sm:p-6; background: color-mix(in srgb, var(--surface-container) 88%, white); border-color: var(--outline-variant); border-radius: 28px; } .state-chip { @apply inline-flex min-h-10 items-center gap-2 px-3 text-sm font-semibold; background: var(--primary-container); border-radius: 999px; color: var(--on-primary-container); } .segmented-control { @apply grid grid-cols-2 gap-1 border p-1; background: var(--surface-container-high); border-color: var(--outline-variant); border-radius: 999px; } .segmented-control button { @apply min-h-10 px-3 text-sm font-semibold transition; border-radius: 999px; color: var(--muted); } .segmented-control-active { background: var(--primary-container); color: var(--on-primary-container) !important; } .app-layout { @apply mx-auto grid w-full gap-4 px-3 pb-28 pt-3; max-width: 1720px; } .app-content { @apply min-w-0; } .app-main { @apply mt-4; } .material-drawer { @apply sticky top-6 hidden h-[calc(100vh-3rem)] flex-col border p-4 lg:flex; background: color-mix(in srgb, var(--surface-container-lowest) 84%, transparent); border-color: color-mix(in srgb, var(--outline-variant) 58%, transparent); border-radius: 32px; box-shadow: var(--elevation-1); } .drawer-brand { @apply mb-5 flex items-center gap-3 px-1; } .drawer-primary-action { @apply mb-5 inline-flex min-h-14 items-center justify-center gap-3 px-5 text-sm font-semibold shadow-can transition active:scale-[0.99]; background: var(--primary-container); border-radius: 18px; color: var(--on-primary-container); } .drawer-nav { @apply grid gap-2; } .drawer-footer { @apply mt-auto grid gap-3; } .drawer-info-card { @apply border p-4; background: var(--surface-container-high); border-color: var(--outline-variant); border-radius: 22px; } .top-app-bar { @apply border p-4 sm:p-5; background: color-mix(in srgb, var(--surface-container-lowest) 86%, transparent); border-color: color-mix(in srgb, var(--outline-variant) 62%, transparent); border-radius: 34px; box-shadow: var(--elevation-1); } .top-app-bar-main { @apply flex flex-col gap-4 xl:flex-row xl:items-start xl:justify-between; } .top-title-cluster { @apply flex min-w-0 items-start gap-3; } .top-app-icon { @apply mt-1 flex h-12 w-12 shrink-0 items-center justify-center; background: var(--primary-container); border-radius: 16px; color: var(--on-primary-container); } .top-kicker { @apply text-sm font-medium; color: var(--primary); } .top-title { @apply mt-1 break-words text-4xl font-semibold sm:text-5xl; color: var(--text); } .top-meta-row { @apply flex flex-wrap items-center gap-2; } .account-chip { @apply inline-flex min-h-10 max-w-full items-center rounded-md px-3 text-xs font-semibold; background: var(--surface-container-high); color: var(--muted); } .top-action-row { @apply mt-5 flex flex-col gap-3 xl:flex-row xl:items-center xl:justify-between; } .top-action-primary, .top-action-secondary { @apply flex flex-wrap gap-2; } .mobile-nav-bar { @apply fixed inset-x-3 bottom-3 z-40 grid grid-cols-5 gap-1 border p-1 shadow-fridge; background: color-mix(in srgb, var(--surface-container-high) 92%, white); border-color: var(--outline-variant); border-radius: 28px; } .mobile-nav-item { @apply flex min-h-16 flex-col items-center justify-center gap-1 text-[11px] font-semibold transition; border-radius: 22px; color: var(--muted); } .mobile-nav-item-active { background: var(--primary-container); color: var(--on-primary-container) !important; } @media (min-width: 1024px) { .app-layout { grid-template-columns: 300px minmax(0, 1fr); gap: 24px; padding: 24px; } .app-main { margin-top: 24px; } } .glass-panel { @apply rounded-lg border shadow-fridge; background: color-mix(in srgb, var(--surface-container-lowest) 88%, transparent); border-color: color-mix(in srgb, var(--outline-variant) 62%, transparent); border-radius: 34px; } .can-panel { @apply rounded-lg border shadow-can; background: linear-gradient(135deg, var(--primary-container), var(--surface-container-high) 58%, var(--tertiary-container)); border-color: color-mix(in srgb, var(--primary) 20%, var(--outline-variant)); border-radius: 36px; } .today-panel { background: radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--primary-container) 82%, white) 0 22%, transparent 44%), linear-gradient(145deg, var(--surface-container-lowest), var(--surface-container) 54%, var(--tertiary-container)); } .oura-hero { background: radial-gradient(circle at 14% 28%, color-mix(in srgb, var(--primary-container) 72%, white) 0 18%, transparent 42%), radial-gradient(circle at 82% 8%, color-mix(in srgb, var(--secondary-container) 70%, white) 0 18%, transparent 38%), var(--surface-container-lowest); } .oura-ring { @apply grid h-32 w-32 shrink-0 place-items-center p-2 shadow-can; background: conic-gradient(var(--primary) var(--progress), var(--surface-container-high) 0); border-radius: 999px; } .oura-ring > div { @apply flex h-full w-full flex-col items-center justify-center; background: var(--surface-container-lowest); border-radius: inherit; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--outline-variant) 72%, transparent); } .oura-ring span { @apply text-4xl font-semibold leading-none; color: var(--text); } .oura-ring small { @apply mt-1 text-xs font-semibold uppercase; color: var(--muted); } .wellness-pill { @apply flex items-center justify-between gap-3 rounded-full border px-4 py-3 text-sm; background: color-mix(in srgb, var(--surface-container-high) 78%, white); border-color: var(--outline-variant); } .wellness-pill span { color: var(--muted); } .wellness-pill strong { color: var(--text); } .suggestion-chip { @apply min-h-11 rounded-full border px-4 py-2 text-sm font-semibold transition disabled:cursor-not-allowed; background: color-mix(in srgb, var(--surface-container-high) 72%, white); border-color: var(--outline-variant); color: var(--text); } .suggestion-chip:hover:not(:disabled) { background: var(--primary-container); color: var(--on-primary-container); box-shadow: var(--elevation-1); } .coach-panel { @apply flex flex-col gap-3 p-5 sm:p-6; } .coach-panel-compact { min-height: 360px; } .coach-panel-full { min-height: calc(100vh - 220px); } .coach-panel-header { @apply flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between; } .coach-panel-title { @apply flex items-start gap-3; } .coach-panel-icon { @apply flex h-10 w-10 shrink-0 items-center justify-center rounded-xl; background: var(--primary-container); color: var(--on-primary-container); } .coach-panel-kicker { @apply text-xs font-semibold uppercase tracking-wide; color: var(--primary); } .coach-panel-heading { @apply text-lg font-semibold leading-snug; color: var(--text); } .coach-panel-meta { @apply flex flex-wrap items-center gap-2; } .coach-status-pill { @apply inline-flex items-center gap-1.5 rounded-full border px-3 py-1 text-xs font-semibold; background: var(--surface-container-high); border-color: var(--outline-variant); color: var(--muted); } .coach-status-dot { @apply h-2 w-2 rounded-full; background: var(--chart-secondary); } .coach-status-dot-busy { background: var(--chart-tertiary); @apply animate-pulse; } .coach-model-tag { @apply text-xs; color: var(--muted); } .coach-expand-button { @apply inline-flex items-center gap-1 rounded-full border px-3 py-1 text-xs font-semibold; border-color: var(--outline-variant); color: var(--text); } .coach-thread-strip { @apply flex flex-wrap items-center gap-2; } .coach-thread-chip { @apply inline-flex items-center overflow-hidden rounded-full border text-xs font-semibold; border-color: var(--outline-variant); background: var(--surface-container-high); } .coach-thread-chip button:first-child { @apply px-3 py-1.5; color: var(--text); } .coach-thread-chip button:last-child { @apply px-2 py-1.5 opacity-60; color: var(--muted); } .coach-thread-chip-active { background: var(--primary-container); border-color: color-mix(in srgb, var(--primary) 30%, var(--outline-variant)); } .coach-thread-new { @apply inline-flex h-8 w-8 items-center justify-center rounded-full border; border-color: var(--outline-variant); color: var(--text); } .coach-panel-context { @apply flex flex-wrap gap-3 text-xs font-semibold; color: var(--muted); } .coach-panel-feed { @apply grid flex-1 content-start gap-3 overflow-y-auto rounded-2xl border p-3; background: var(--surface-container-low); border-color: var(--outline-variant); min-height: 200px; max-height: min(56vh, 640px); } .coach-panel-feed-compact { min-height: 160px; max-height: 280px; } .coach-panel-empty { @apply flex flex-col items-center justify-center gap-3 px-4 py-8 text-center; color: var(--muted); } .coach-panel-empty p { @apply max-w-sm text-sm leading-6; } .coach-quick-grid { @apply grid w-full gap-2; } .coach-line { @apply grid grid-cols-[auto_1fr] gap-2; } .coach-line-avatar { @apply flex h-7 w-7 shrink-0 items-center justify-center rounded-full text-[10px] font-semibold; background: var(--surface-container-high); color: var(--text); } .coach-line-assistant .coach-line-avatar { background: var(--primary-container); color: var(--on-primary-container); } .coach-line-user .coach-line-avatar { background: var(--tertiary-container); color: var(--on-tertiary-container); } .coach-line-body { @apply min-w-0 rounded-2xl px-3 py-2 text-sm leading-relaxed; background: var(--surface-container-high); color: var(--text); } .coach-line-user .coach-line-body { background: var(--primary); color: var(--on-primary); } .coach-line-typing { @apply inline-block animate-pulse; color: var(--muted); } .coach-panel-error { @apply rounded-xl border px-3 py-2 text-sm; border-color: var(--error-container); background: var(--error-container); color: var(--on-error-container); } .coach-panel-composer { @apply flex items-center gap-2; } .coach-panel-input { @apply min-h-11 flex-1; } .coach-panel-send { @apply min-h-11 min-w-11 px-0; } .thinking-pill { @apply mb-2 overflow-hidden rounded-full border; background: color-mix(in srgb, var(--surface-container) 88%, black 4%); border-color: color-mix(in srgb, var(--outline-variant) 80%, var(--primary) 20%); } .thinking-pill-track { @apply relative flex min-h-10 items-center justify-center overflow-hidden px-4; } .thinking-pill-label { @apply relative z-[1] text-xs font-semibold tracking-wide; color: var(--muted); } .thinking-pill-chevron { @apply absolute right-3 z-[1] text-xs font-bold opacity-70; color: var(--primary); animation: thinking-unlock-nudge 1.8s ease-in-out infinite; } .thinking-pill-shimmer { @apply absolute inset-y-0 left-0 w-16 rounded-full opacity-70; background: linear-gradient( 90deg, transparent, color-mix(in srgb, var(--primary-container) 70%, white), transparent ); animation: thinking-unlock-slide 1.8s ease-in-out infinite; } .thinking-pill-stopped .thinking-pill-shimmer, .thinking-pill-stopped .thinking-pill-chevron { animation: none; opacity: 0.35; } .thinking-details { @apply mt-2; } .thinking-details summary { @apply cursor-pointer text-xs font-medium; color: var(--muted); } .thinking-details summary:hover { color: var(--text); } .thinking-trace { @apply mt-2 max-h-56 overflow-auto rounded-xl border p-3 text-xs leading-5 whitespace-pre-wrap; background: var(--surface-container); border-color: var(--outline-variant); color: var(--muted); } .coach-composer { @apply absolute inset-x-0 bottom-0 z-10; background: linear-gradient(to top, var(--surface-container-lowest) 60%, transparent); padding: 0 1rem 1rem; } .coach-composer-inner { @apply mx-auto flex max-w-3xl items-end gap-2 rounded-2xl border p-2; background: var(--surface-container-high); border-color: var(--outline-variant); box-shadow: var(--elevation-2); } .coach-input { @apply min-h-11 flex-1 resize-none rounded-xl border-0 px-3 py-2 text-sm; background: transparent; color: var(--text); field-sizing: content; max-height: 160px; } .coach-input:focus { box-shadow: none; } .coach-input::placeholder { color: var(--muted); } .composer-icon-button, .composer-send-button { @apply flex h-9 w-9 shrink-0 items-center justify-center rounded-xl transition disabled:cursor-not-allowed disabled:opacity-40; } .composer-icon-button:hover { background: var(--surface-container); } .composer-send-button { background: var(--primary); color: var(--on-primary); } .composer-send-button:hover:not(:disabled) { filter: brightness(1.05); } .composer-stop-button { background: var(--surface-container-high); color: var(--text); } .coach-unlock-card { @apply mt-6 flex w-full max-w-md flex-col gap-3; } .coach-unlock-card .coach-input { @apply rounded-xl border px-4 py-3; background: var(--surface-container-lowest); border-color: var(--outline-variant); } .coach-error { @apply mx-auto max-w-3xl px-4 pb-2; } .coach-error-inner { @apply rounded-xl border px-3 py-2 text-sm; border-color: var(--error-container); background: var(--error-container); color: var(--on-error-container); } .coach-typing-dots { @apply flex items-center gap-1 py-1; } .coach-typing-dots span { @apply inline-block h-2 w-2 rounded-full; background: var(--muted); animation: coach-bounce 1.4s infinite ease-in-out both; } .coach-typing-dots span:nth-child(1) { animation-delay: 0s; } .coach-typing-dots span:nth-child(2) { animation-delay: 0.16s; } .coach-typing-dots span:nth-child(3) { animation-delay: 0.32s; } @keyframes coach-bounce { 0%, 80%, 100% { transform: scale(0.6); opacity: 0.4; } 40% { transform: scale(1); opacity: 1; } } .coach-hint { @apply mt-1.5 text-center text-xs; color: var(--muted); } @media (min-width: 1280px) { .coach-shell { /* sidebar visible */ } } .can-emblem { @apply flex h-11 w-11 items-center justify-center rounded-lg border shadow-can; background: var(--primary-container); border-color: color-mix(in srgb, var(--primary) 24%, var(--outline-variant)); color: var(--on-primary-container); } .command-button, .secondary-button { @apply inline-flex min-h-11 items-center justify-center gap-2 rounded-md border px-4 py-2 text-sm font-semibold shadow-sm transition active:scale-[0.99] disabled:cursor-not-allowed; background: var(--secondary-container); border-color: transparent; color: var(--on-secondary-container); border-radius: 999px; } .primary-button { @apply inline-flex min-h-11 items-center justify-center gap-2 rounded-md border px-4 py-2 text-sm font-semibold shadow-can transition active:scale-[0.99] disabled:cursor-not-allowed; background: var(--primary); border-color: transparent; color: var(--on-primary); border-radius: 999px; } .excel-button { @apply inline-flex min-h-11 items-center justify-center gap-2 rounded-md border px-4 py-2 text-sm font-semibold shadow-sm transition active:scale-[0.99] disabled:cursor-not-allowed; background: var(--tertiary-container); border-color: transparent; color: var(--on-tertiary-container); border-radius: 999px; } .primary-button:hover, .secondary-button:hover, .command-button:hover, .excel-button:hover, .icon-button:hover, .quick-add:hover, .list-button:hover { filter: brightness(0.985); box-shadow: var(--elevation-2); } .primary-button:disabled, .secondary-button:disabled, .command-button:disabled, .excel-button:disabled, .danger-button:disabled { box-shadow: none; opacity: 0.58; } .danger-button { @apply inline-flex min-h-11 items-center justify-center gap-2 rounded-md border px-4 py-2 text-sm font-semibold shadow-sm transition active:scale-[0.99] disabled:cursor-not-allowed; background: var(--error); border-color: transparent; color: var(--on-error); border-radius: 999px; } .nav-item { @apply flex min-h-12 items-center gap-3 border border-transparent px-4 text-sm font-medium transition; border-radius: 999px; color: var(--muted); } .nav-item:hover { background: var(--surface-container-high); color: var(--text); } .nav-item-active { background: var(--primary-container); color: var(--on-primary-container) !important; box-shadow: none; } .icon-button { @apply inline-flex h-10 w-10 shrink-0 items-center justify-center rounded-md border shadow-sm transition; background: var(--surface-container-high); border-color: var(--outline-variant); color: var(--text); } .quick-add { @apply inline-flex min-h-12 items-center gap-2 rounded-md border px-3 text-sm font-semibold shadow-sm transition; background: var(--surface-container-high); border-color: var(--outline-variant); color: var(--text); } .field-label { @apply grid gap-2 text-sm font-medium; color: var(--muted); } .field-control { @apply w-full rounded-md border px-3 py-3 text-base font-normal shadow-sm transition; background: var(--surface-container-lowest); border-color: var(--outline-variant); color: var(--text); border-radius: 16px; } .field-control:focus { border-color: var(--primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary) 14%, transparent); } .modal-panel { @apply max-h-[92vh] w-full max-w-3xl overflow-y-auto rounded-lg border p-5 shadow-fridge sm:p-6; background: var(--surface-container-lowest); border-color: var(--outline-variant); color: var(--text); border-radius: 28px; } .entry-row { @apply grid gap-3 rounded-lg border p-4 transition sm:grid-cols-[1fr_auto] sm:items-center; background: var(--surface-container-high); border-color: var(--outline-variant); border-radius: 18px; } .entry-row:hover { box-shadow: var(--elevation-1); } .list-button { @apply flex min-h-11 items-center justify-between rounded-lg border px-3 text-sm font-semibold transition; background: var(--secondary-container); border-color: transparent; color: var(--on-secondary-container); } .status-card { @apply flex items-center gap-2 rounded-md border px-3 py-2 text-sm shadow-sm; } .theme-indicator { @apply inline-flex min-h-11 items-center gap-2 rounded-full border px-3 text-sm font-semibold transition; background: var(--surface-container-high); border-color: var(--outline-variant); color: var(--text); } .theme-indicator:hover { background: var(--primary-container); color: var(--on-primary-container); } .theme-indicator-swatch { @apply h-4 w-4 rounded-full border border-white shadow-sm; } .theme-indicator-label { @apply max-w-[9rem] truncate; } .settings-section { @apply grid gap-4; } .settings-tabs { @apply inline-flex flex-wrap gap-1 rounded-full border p-1; background: var(--surface-container-high); border-color: var(--outline-variant); } .settings-tabs button { @apply rounded-full px-4 py-2 text-sm font-semibold transition; color: var(--muted); } .settings-tabs button:hover, .settings-tab-active { background: var(--primary-container); color: var(--on-primary-container) !important; } .theme-preview-strip { @apply flex flex-wrap gap-2; } .theme-preview-chip { color: var(--text); } .theme-picker-grid { @apply grid gap-3 sm:grid-cols-2 lg:grid-cols-3; } .theme-tile { @apply flex min-h-[4.5rem] items-center gap-3 rounded-xl border px-3 py-3 text-left transition; background: var(--surface-container); border-color: var(--outline-variant); color: var(--text); } .theme-tile:hover { box-shadow: var(--elevation-1); border-color: var(--outline); } .theme-tile-active { border-color: var(--primary); box-shadow: var(--elevation-1); background: var(--primary-container); color: var(--on-primary-container); } .theme-tile-swatch { @apply h-10 w-10 shrink-0 rounded-full border border-white shadow-sm; } .theme-tile-label { @apply text-sm font-semibold leading-5; } } .app-shell { --primary: #4b86ad; --on-primary: #ffffff; --primary-container: #dff2ff; --on-primary-container: #10283a; --secondary: #647887; --on-secondary: #ffffff; --secondary-container: #ecf3f7; --on-secondary-container: #1f2d35; --tertiary: #9b7b51; --on-tertiary: #ffffff; --tertiary-container: #f4eadb; --on-tertiary-container: #332313; --error: #ba1a1a; --on-error: #ffffff; --error-container: #ffdad6; --on-error-container: #410002; --bg: #f8fbff; --surface: #f8fbff; --surface-container-lowest: #ffffff; --surface-container-low: #f1f7fb; --surface-container: #edf3f7; --surface-container-high: #e7eef3; --panel: var(--surface-container); --panel-strong: var(--surface-container-lowest); --outline: #7c8992; --outline-variant: #dce5ea; --text: #1f252a; --muted: #68747c; --subtle: #839099; --accent: var(--primary-container); --accent-soft: var(--surface-container-low); --accent-strong: var(--primary); --accent-warm: #eef4f7; --chart-primary: #4b86ad; --chart-secondary: #6f8f7c; --chart-tertiary: #9b7b51; --chart-error: #ba1a1a; --chart-grid: rgba(124, 137, 146, 0.18); --elevation-1: 0 12px 34px rgba(69, 91, 108, 0.08), 0 1px 2px rgba(69, 91, 108, 0.06); --elevation-2: 0 18px 44px rgba(69, 91, 108, 0.12), 0 2px 8px rgba(69, 91, 108, 0.08); min-height: 100vh; background: var(--bg) !important; color: var(--text) !important; font-family: "Google Sans", "Google Sans Text", "Product Sans", Roboto, -apple-system, BlinkMacSystemFont, sans-serif; } .backdrop-wash { background: radial-gradient(circle at 70% 35%, var(--primary-container) 0 18%, transparent 42%), radial-gradient(circle at 12% 12%, var(--surface-container-lowest) 0 18%, transparent 38%), linear-gradient(180deg, var(--bg) 0%, var(--surface-container-lowest) 46%, var(--surface-container-low) 100%); } .backdrop-grid { background-image: linear-gradient(var(--chart-grid) 1px, transparent 1px), linear-gradient(90deg, var(--chart-grid) 1px, transparent 1px); background-size: 48px 48px; opacity: 0; } .backdrop-rail { background: linear-gradient(90deg, var(--primary-container), var(--accent-warm), var(--tertiary-container), var(--primary-container)); } .app-shell *, .app-shell .tracking-tight, .app-shell [class*="tracking-"] { letter-spacing: 0 !important; } .app-shell .text-white, .app-shell .text-slate-50, .app-shell .text-slate-100, .app-shell .text-slate-200 { color: var(--text) !important; } .app-shell .text-slate-300, .app-shell .text-slate-400, .app-shell .text-slate-500, .app-shell .text-slate-600 { color: var(--muted) !important; } .app-shell .text-cyan-50, .app-shell .text-cyan-100, .app-shell .text-cyan-200, .app-shell .text-pink-100, .app-shell .text-pink-200 { color: var(--primary) !important; } .app-shell .text-emerald-200 { color: #2d6f57 !important; } .app-shell .text-amber-100, .app-shell .text-amber-200 { color: #765930 !important; } .app-shell .text-red-100, .app-shell .text-red-200 { color: var(--error) !important; } .app-shell .text-\[\#07101f\] { color: var(--on-primary-container) !important; } .app-shell .primary-button, .app-shell .primary-button * { color: var(--on-primary) !important; } .app-shell .secondary-button, .app-shell .secondary-button *, .app-shell .command-button, .app-shell .command-button * { color: var(--on-secondary-container) !important; } .app-shell .excel-button, .app-shell .excel-button * { color: var(--on-tertiary-container) !important; } .app-shell .bg-\[\#050711\], .app-shell .bg-\[\#090f22\]\/90, .app-shell .bg-\[\#0d142c\], .app-shell .bg-\[\#080d1f\]\/95, .app-shell .bg-\[\#070d1f\]\/90, .app-shell .bg-\[\#07101f\] { background: var(--surface-container-high) !important; } .app-shell .bg-cyan-300, .app-shell .bg-cyan-200, .app-shell .bg-cyan-300\/10, .app-shell .bg-cyan-200\/10, .app-shell .bg-cyan-300\/15 { background-color: var(--primary-container) !important; } .app-shell .bg-pink-200, .app-shell .bg-pink-200\/10 { background-color: var(--secondary-container) !important; } .app-shell .bg-amber-300\/10, .app-shell .bg-amber-300\/15 { background-color: var(--tertiary-container) !important; } .app-shell .bg-red-500\/10, .app-shell .bg-red-500\/15 { background-color: var(--error-container) !important; } .app-shell .bg-white\/5, .app-shell .bg-white\/\[0\.05\], .app-shell .bg-white\/\[0\.06\], .app-shell .bg-white\/\[0\.08\], .app-shell .bg-white\/10, .app-shell .bg-white\/\[0\.10\], .app-shell .hover\:bg-white\/10:hover, .app-shell .hover\:bg-white\/\[0\.10\]:hover, .app-shell .hover\:bg-white\/\[0\.12\]:hover { background-color: var(--surface-container-high) !important; } .app-shell .border-white\/10, .app-shell .border-cyan-200\/20, .app-shell .border-cyan-200\/25, .app-shell .border-cyan-200\/30, .app-shell .border-cyan-300\/30, .app-shell .border-cyan-300\/40, .app-shell .border-pink-200\/30, .app-shell .border-pink-200\/40, .app-shell .border-amber-300\/40, .app-shell .border-red-400\/40 { border-color: var(--outline-variant) !important; } .app-shell .shadow-fridge, .app-shell .shadow-cyan, .app-shell .shadow-sm { box-shadow: var(--elevation-1) !important; } .app-shell .danger-button, .app-shell .danger-button * { color: var(--on-error) !important; } .app-shell .field-control::placeholder { color: color-mix(in srgb, var(--muted) 58%, white); } .app-shell input[type="checkbox"] { accent-color: var(--primary); } .app-shell .modal-panel { color: var(--text); } @keyframes thinking-unlock-slide { 0% { transform: translateX(-120%); } 100% { transform: translateX(calc(100vw + 120%)); } } @keyframes thinking-unlock-nudge { 0%, 100% { transform: translateX(0); opacity: 0.45; } 50% { transform: translateX(-4px); opacity: 1; } }