/* Indira motion: short, soft responses; layout and native dialog behavior stay intact. */
:root{--indira-ease-out:cubic-bezier(.22,1,.36,1);--indira-ease-soft:cubic-bezier(.2,.75,.25,1)}
.btn,.icon-btn,.more-btn,.contact-btn,.tab,.chat-chips button,.nav button,.bottom-nav button,.mobile-status,.text-action,.reminder-actions button{
  transition:transform 180ms var(--indira-ease-out),background-color 160ms ease,color 160ms ease;
  -webkit-tap-highlight-color:transparent;
}
.btn:active:not(:disabled),.icon-btn:active:not(:disabled),.more-btn:active:not(:disabled),.contact-btn:active:not(:disabled),.tab:active:not(:disabled),.chat-chips button:active:not(:disabled),.nav button:active:not(:disabled),.bottom-nav button:active:not(:disabled),.mobile-status:active:not(:disabled),.text-action:active:not(:disabled),.reminder-actions button:active:not(:disabled){transform:scale(.97)}
.bottom-nav .bottom-add:active:not(:disabled){transform:scale(.94)}
.chat-message,.ai-plan{transform-origin:50% 100%}
.row-menu{transform-origin:100% 0}
.indira-motion-ghost{pointer-events:none!important;user-select:none!important;margin:0!important;z-index:80!important}
html.indira-native-dialog-motion dialog{
  opacity:0;transform:translateY(12px) scale(.985);
  transition:opacity 220ms var(--indira-ease-soft),transform 300ms var(--indira-ease-out),display 300ms allow-discrete,overlay 300ms allow-discrete;
}
html.indira-native-dialog-motion dialog[open]{opacity:1;transform:translateY(0) scale(1)}
html.indira-native-dialog-motion dialog::backdrop{opacity:0;transition:opacity 220ms ease,display 300ms allow-discrete,overlay 300ms allow-discrete}
html.indira-native-dialog-motion dialog[open]::backdrop{opacity:1}
@starting-style{
  html.indira-native-dialog-motion dialog[open]{opacity:0;transform:translateY(14px) scale(.985)}
  html.indira-native-dialog-motion dialog[open]::backdrop{opacity:0}
}
@media(max-width:760px){
  .sidebar{transition:transform 320ms var(--indira-ease-out)}
  html.indira-native-dialog-motion dialog{transform:translateY(24px) scale(.99);transform-origin:50% 90%}
  html.indira-native-dialog-motion dialog[open]{transform:translateY(0) scale(1)}
  @starting-style{html.indira-native-dialog-motion dialog[open]{opacity:0;transform:translateY(28px) scale(.99)}}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .row-menu,dialog,.form-actions,.chat-form{background:#fbf6fb}
  dialog::backdrop{background:#58445c55}
}
@media(prefers-reduced-transparency:reduce){
  .row-menu,dialog,.form-actions,.chat-form,.sidebar-scrim{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .row-menu,dialog,.form-actions,.chat-form{background:#fbf6fb}
  dialog::backdrop{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#58445c55}
}
@media(prefers-reduced-motion:reduce){
  .btn,.icon-btn,.more-btn,.contact-btn,.tab,.chat-chips button,.nav button,.bottom-nav button,.mobile-status,.text-action,.reminder-actions button,.sidebar{transition:none!important}
  .btn:active,.icon-btn:active,.more-btn:active,.contact-btn:active,.tab:active,.chat-chips button:active,.nav button:active,.bottom-nav button:active,.mobile-status:active,.text-action:active,.reminder-actions button:active{transform:none!important}
  html.indira-native-dialog-motion dialog,html.indira-native-dialog-motion dialog::backdrop{transition:none!important}
  html.indira-native-dialog-motion dialog[open]{opacity:1;transform:none!important}
}
