/* Public Mud controls inherit the terminal shell; layout stays in site.css. */
.mud-button-root, .mud-chip, .mud-nav-link, .mud-input, .mud-list-item {
    font-family: "Courier New", Consolas, monospace;
    letter-spacing: inherit;
}
.mud-button-root { border-radius: 8px; text-decoration: none; }
.mud-button-root:hover, .mud-chip a, .mud-nav-link { text-decoration: none; }
.mud-button-root.btn { font-size:14px; line-height: 1.4; min-width: 0; }
.mud-button-root.filter { font-size:14px; line-height: 1.4; }
.mud-button-root.presence {
    border: 0; padding: 0; min-width: 0; font-size: inherit;
    font-weight: inherit; line-height: inherit; text-transform: none;
    justify-content: flex-start; border-radius: 0;
}
.presence .mud-button-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mud-button-root.presence.open { text-decoration: none; }
.mud-icon-button.iconbtn, .mud-icon-button.closebtn {
    padding: 5px; border-radius: 8px; color: var(--green2); font-size: 14px;
}
.mud-icon-button.closebtn { width: 28px; height: 28px; }
.mud-icon-button .mud-icon-root { width: 20px; height: 20px; }
.mud-button-root.start { min-width: 0; padding: 3px; border-radius: 50%; }
.start .mud-button-label { height: 100%; width: 100%; }
.mud-paper { color: var(--text); border-radius: 8px; }
.mud-paper.post-card, .mud-paper.lead, .mud-paper.card, .mud-paper.storytile,
.mud-paper.railitem, .mud-paper.widget, .mud-paper.panel, .mud-paper.form-panel {
    background: linear-gradient(180deg, rgba(13,18,14,.98), rgba(8,12,9,.98));
}
.mud-chip.chip, .mud-chip.badge {
    margin: 0; height: auto; min-height: 24px; border-radius: 8px;
    font-size:14px; line-height: 1.4; background: #0b130d;
}
.mud-chip .mud-chip-content { gap: 4px; }
.mud-input-control { margin-top: 0; min-width: 0; }
.mud-input { font-size: 14px; color: var(--text); background: #070a08; border-radius: 8px; }
.mud-input-outlined-border { border-color: #334137; border-radius: 8px; }
.mud-input-control .mud-input-slot {
    font: inherit; color: inherit; background: transparent; border: 0;
    border-radius: 8px; padding: 10px 12px; width: 100%;
}
.mud-input-control textarea.mud-input-slot { line-height: 1.6; min-height: 130px; }
.mud-input-control .mud-input-slot:focus { outline: none; }
.mud-input-control .mud-input-slot::placeholder { color: #849088; opacity: 1; }
.mud-input-control.form-control, .mud-input-control.select {
    padding: 0; border: 0; background: transparent;
}
.search-form .mud-input-control, .live-search-row .mud-input-control { flex: 1; }
.live-search-field .mud-input-slot { font-size:14px; height: 36px; padding: 0 12px; }
.live-search-field .mud-input-control-input-container { margin: 0; }
.live-search-field .mud-input { margin: 0; }
.live-search-field .mud-input-control-helper-container { display: none; }
.command > .mud-input-control { padding: 8px 12px; }
.mud-list.command-results { padding: 8px; }
.cmdrow .mud-list-item-text { display: flex; align-items: center; gap: 10px; margin: 0; }
.cmdrow .mud-typography { display: contents; font: inherit; }
.cmdrow small { margin-left: auto; }
.mud-list.widget-list { padding: 0; }
.widget-list .mud-list-item-text { margin: 0; }
.widget-list .mud-typography { display: flex; align-items: center; justify-content: space-between; font-size: 14px; }
.mud-navmenu.startmain { padding: 10px; }
.menuitem .mud-nav-link { color: inherit; padding: 0; }
.menuitem .mud-nav-link-text { display: flex; align-items: center; gap: 10px; margin: 0; }
.menuitem .mud-list-item-text { margin: 0; }
.menuitem .mud-typography { display: flex; align-items: center; gap: 10px; font: inherit; }
.mud-drawer.mud-drawer-persistent.drawer {
    position: fixed; height: auto; max-height: none;
    top: calc(var(--top) + var(--path) + env(safe-area-inset-top) + 10px);
    bottom: calc(var(--bottom) + env(safe-area-inset-bottom) + 10px);
    width: min(440px,95vw); z-index: 47;
}
.mud-drawer.mud-drawer-persistent.drawer.left { transform: translateX(-103%); }
.mud-drawer.mud-drawer-persistent.drawer.right { transform: translateX(103%); }
.mud-drawer.mud-drawer-persistent.drawer.open { transform: translateX(0); }
.drawer .mud-drawer-content { display: flex; flex-direction: column; height: 100%; overflow: hidden; }
.mud-drawer.mud-drawer-persistent.mud-drawer-pos-bottom.startmenu {
    position: fixed; top: auto; right: auto; left: 50%; height: auto;
    bottom: calc(var(--bottom) + env(safe-area-inset-bottom) + 10px);
    width: min(680px,94vw); max-height: min(74dvh,760px); z-index: 48;
    transform: translate(-50%,12px); opacity: 0; pointer-events: none;
}
.mud-drawer.mud-drawer-persistent.mud-drawer-pos-bottom.startmenu.open { transform: translate(-50%,0); opacity: 1; pointer-events: auto; }
.startmenu .mud-drawer-content { display: block; height: auto; overflow: auto; flex: none; }
.control-row .mud-switch { margin: 0; }
.mud-avatar.avatar-img { width: 54px; height: 54px; border-radius: 8px; }
.avatar-img .mud-image { width: 100%; height: 100%; object-fit: cover; }
@media (prefers-reduced-motion: reduce) {
    .mud-drawer.mud-drawer-persistent.drawer, .mud-drawer.mud-drawer-persistent.mud-drawer-pos-bottom.startmenu { transition: none; }
}

.mud-list.archive-list { padding: 0; }
.archive-list .mud-list-item-text { margin: 0; }
.archive-list .mud-typography { display: grid; grid-template-columns: 65px 1fr auto; align-items: center; gap: 12px; font: inherit; }

.live-search-field .mud-input.home-search { padding: 0; height: auto; }

.mud-list.command-results .cmdrow small { color: #a4afa7; }
.drawer .chatline.system, .drawer .locked { color: #a4afa7; }
.drawer .chatline.system { color: #78847b; }
.drawer .chatline.system a { color: #d0ffda; font-weight: 700; }
.command .command-help { color: #a4afa7; }

/* sidebar search: compact stacked rows, button aligned with the field */
.side-search .live-search-row { align-items: center; }
.side-search .live-search-row .mud-button-root { align-self: center; height: 56px; }
.live-search.side-search .home-search-results .cmdrow { display: grid !important; grid-template-columns: 1fr !important; gap: 2px; padding: 10px 14px; align-items: start; }
.live-search.side-search .home-search-results .cmdrow small { margin-left: 0 !important; }
.side-search .home-search-results .cmdrow .cmdtype { font-size:14px; }
.live-search.side-search .home-search-results .cmdrow p { display: grid !important; grid-template-columns: 1fr !important; gap: 2px; width: 100%; }
.live-search.side-search .home-search-results .cmdrow p small { margin-left: 0 !important; color: var(--muted); }
/* Account profile uses the same contained rhythm as the auth cards. */
.account-column { width: 100%; max-width: 860px; margin: 0 auto; display: grid; gap: 18px; min-width: 0; }
.account-column .pagehead { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; justify-content: space-between; }
.account-column .actions { display: flex; flex-wrap: wrap; gap: 10px; }
.account-column .form-panel { min-width: 0; }
.account-column pre { white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 480px) {
    header.topbar { gap: 5px; padding-left: max(6px, env(safe-area-inset-left)); padding-right: max(6px, env(safe-area-inset-right)); }
    .topbar .presence { flex: 0 0 auto; font-size: 9px; letter-spacing: 0; overflow: visible; }
    .topbar .presence .mud-button-label { overflow: visible; }
    header.topbar .identity { flex: 0 1 auto; min-width: 0; max-width: none; gap: 4px; }
    header.topbar .ghost-tag { overflow: visible; text-overflow: clip; display: flex; min-width: 0; font-size: 9px; letter-spacing: 0; white-space: nowrap; }
    .topbar .session-prefix, .topbar .session-suffix { flex: none; white-space: pre; }
    .topbar .session-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
    header.topbar .iconbtn { flex: none; padding: 3px; width: 24px; height: 24px; }
}
.admin-shell.account-column { max-width: 860px; margin-left: auto; margin-right: auto; }

/* Themed icon reactions */
.reaction-bar { margin: 24px 0; }
.reaction-heading { display: flex; align-items: baseline; gap: 16px; }
.reaction-heading h2 { font-size: 1.2rem; }
.reaction-heading > span { color: #b8c9c2; }
.reaction-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.reaction-bar .reaction-button { color: #b8c9c2; border-color: #52685e; border-radius: 8px; text-transform: none; }
.reaction-button .mud-button-label { gap: 8px; }
.reaction-bar .reaction-button.mine { color: #9fffc7; border-color: #9fffc7; background: #153026; }
.reaction-bar .reaction-button:hover { box-shadow: 0 0 10px #9fffc733; }
.reaction-bar .reaction-button:focus-visible { outline: 2px solid #9fffc7; outline-offset: 3px; }

/* Registration invitation and quiet attribution. */
.registration-banner { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 16px; margin-bottom:16px; border:1px solid var(--line); }
.registration-banner .actions { flex-shrink:0; flex-wrap:wrap; }
.copyright { padding:10px 12px; }
@media (max-width:640px) { .registration-banner { flex-direction:column; align-items:flex-start; } }
