/* Immediate feedback is faster than changes of context. */
:root { --motion-press: 90ms; --motion-state: 160ms; --motion-context: 240ms; --motion-ease: cubic-bezier(.16,1,.3,1); }
:is(button,.btn,a,summary) { -webkit-tap-highlight-color: rgba(200,255,46,.18); touch-action: manipulation; }
:is(button,.btn,.sample-outline,.sample-sidebar a,summary):not(:disabled) { cursor: pointer; transition: background-color var(--motion-state), border-color var(--motion-state), color var(--motion-state), transform var(--motion-press) var(--motion-ease), filter var(--motion-press); }
:is(button,.btn,.sample-outline,summary):not(:disabled):active { transform: scale(.98) !important; filter: brightness(.9); }
button:disabled { cursor: not-allowed; }
.sample-panel,.sample-metric { transition: border-color var(--motion-state), background-color var(--motion-state); }
.sample-search:focus-within { border-color: var(--accent); background: #203e2c; }
.sample-register tbody tr { transition: background-color var(--motion-state); }
.sample-register tbody tr:focus-within { background: #203e2c; }
.sample-bars { gap: 8px; }
.sample-bars > div { position: relative; min-width: 0; flex-basis: 0; }
.product-led .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important; }
.sample-bars button { display: flex; flex: 1; flex-direction: column; justify-content: end; align-items: stretch; gap: 8px; width: 100%; min-width: 24px; min-height: 44px; padding: 0 3px; border: 0; border-radius: 8px; background: transparent; color: inherit; }
.sample-bars button i { width: 100%; transform-origin: bottom; flex-shrink: 0; }
.sample-bars button[aria-pressed="true"] { background: #203e2c; }
.sample-bars button[aria-pressed="true"] span { color: var(--accent); font-weight: 700; }
.sample-chart-detail { min-height: 36px; padding: 8px 0 0; margin: 0; color: var(--sample-quiet); font-size: 11px; line-height: 1.5; }
.sample-chart-detail strong { color: var(--accent); }
.product-led .sample-board { animation: none; }
.product-led .sample-panel-heading a,.sample-open,.sample-finance-link,.product-proof a { min-height: 32px; align-items: center; }
.product-led .sample-outline { min-height: 36px; }
.product-led .sample-sidebar { gap: 8px; }
.landing-day-steps { gap: 8px; }
.landing-sim-status { min-height: 40px; }
.landing-sim-record { transition: background-color var(--motion-context); }
.landing-mobile-menu[open] summary { background: #203e2c; border-color: var(--accent); }
:is(.faq-list,.help-question) summary { min-height: 48px; }
.product-led .product-proof a { display: inline-flex; }
@media (prefers-reduced-motion:no-preference) {
 #fv-inquiry-panel,#ai-chat-panel { animation: interaction-panel-in var(--motion-context) var(--motion-ease); }
 @keyframes interaction-panel-in { from { opacity: .6; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } }
}
@media (hover:hover) and (pointer:fine) {
 .sample-bars button:hover { background: #203e2c; }
 .sample-register tbody tr:hover { background: #203e2c; }
 .sample-panel:hover { border-color: var(--accent); }
 .product-led .btn:hover svg,.sample-finance-link:hover svg,.product-proof a:hover svg { transform: translateX(3px); }
 .product-led a svg { transition: transform var(--motion-state) var(--motion-ease); }
}
@media (pointer:coarse), (max-width:600px) {
 .product-led .sample-panel-heading a,.sample-open,.sample-finance-link,.product-proof a { min-height: 44px; }
 .product-led .sample-outline { min-height: 44px; }
 .sample-sidebar>button { min-width: 44px; }
 .sample-search input { font-size: 16px !important; }
 .sample-bars { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-template-rows: repeat(2,minmax(0,1fr)); height: 244px; gap: 8px; }
 .sample-bars button { min-width: 44px; padding-inline: 4px; }
 .sample-bars button i { max-height: 80px; }
 .toast button { min-width: 44px; min-height: 44px; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior: auto !important; }
 :is(button,.btn,a,summary,.sample-panel,.sample-metric,.sample-search,.sample-register tr,.landing-sim-record) { transition-duration: 80ms !important; transition-property: color,background-color,border-color !important; }
 :is(button,.btn,.sample-outline,summary):active,.product-led a:hover svg { transform: none !important; }
 .product-led .sample-board,.modal,.toast,.landing-sim-body { animation: none !important; }
}
