/* Shared control rhythm. Action colors remain defined by each semantic role. */
:root{--button-font-size:13px;--button-height:44px;--button-radius:11px;--button-gap:8px}
body [hidden]{display:none!important}
body button,body a:is(.sidebar-btn,.admin-back-btn){font-family:inherit;font-size:var(--button-font-size);font-weight:500;line-height:1.35;box-sizing:border-box;cursor:pointer}
body :is(.btn-small,.btn,.sidebar-btn,.admin-back-btn,.login-btn,.new-messages-btn,.retry-message-btn,.task-cancel-btn,.chat-question-choice,.chat-question-submit,.uif-btn),body :is(.push-actions,.memory-actions,.memory-toolbar,.archive-actions,.archive-edit,.recurring-actions) button{
 min-height:var(--button-height)!important;border-radius:var(--button-radius)!important;font-size:var(--button-font-size)!important;font-weight:500!important;line-height:1.35!important;padding:10px 14px!important;gap:var(--button-gap)!important;align-items:center;justify-content:center;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-decoration:none;transition:background .16s,border-color .16s,color .16s,box-shadow .16s;
}
body :is(.btn-small,.btn,.sidebar-btn,.admin-back-btn,.uif-btn){display:inline-flex}
body :is(.push-actions,.memory-actions,.archive-actions,.archive-edit,.recurring-actions) button{border:1px solid var(--border)}
body :is(.admin-header-actions,.admin-card-actions,.form-actions,.mail-actions,.memory-actions,.push-actions,.archive-actions,.archive-edit,.recurring-actions,.uif-dialog-actions){gap:var(--button-gap)!important;flex-wrap:wrap}
body :is(.modal-close,.users-panel-close,.preface-modal-close,.uif-dialog-close,.hamburger-btn,.attach-btn,.send-btn),body :is(#archiveClose,#recurringClose){width:40px;min-width:40px;height:40px;min-height:40px;border-radius:var(--button-radius);padding:8px;display:inline-flex;align-items:center;justify-content:center;line-height:1}
body button:focus-visible,body a:is(.sidebar-btn,.admin-back-btn):focus-visible{outline:2px solid var(--accent,#818cf8);outline-offset:3px}
body button:disabled{cursor:default;opacity:.5}
body :is(.btn-small,.admin-back-btn,.uif-btn):hover:not(:disabled){box-shadow:0 3px 12px #0000000c}
body .btn-small .ui-icon,body .admin-back-btn .ui-icon{width:16px;height:16px;flex:0 0 16px}
@media(prefers-reduced-motion:reduce){body button,body a:is(.sidebar-btn,.admin-back-btn){transition:none!important}}

body #sendBtn{width:48px!important;min-width:48px!important;max-width:48px!important;padding:0!important;flex:0 0 48px;gap:0!important}
body #sendBtn .ui-icon{display:inline-flex!important;width:20px;height:20px}
body .input-wrapper .input-container{min-width:0;padding:0!important;flex:1 1 0}
body #messageInput{min-width:0;box-sizing:border-box}
@media(max-width:768px){body .main{margin:0!important;width:100%!important;min-width:0}body #composerDropZone{left:0!important;right:0!important;width:100%!important}}

body .message-code-copy{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:7px;border-radius:9px}
body .message-code-copy svg{width:18px;height:18px;pointer-events:none}
body .message-code-copy.is-copied{color:var(--success,#34d399);border-color:currentColor}
