/* Layout corrections: retain the supplied desktop components and palette. */
input,select,textarea{min-width:0;max-width:100%}
button,a,input,select,textarea{touch-action:manipulation}
:focus-visible{outline:2px solid #6366f1;outline-offset:3px}
.split>*{min-width:0}
.split-media-row>div{min-width:0;overflow-wrap:anywhere}
.split-media-row .badge{flex:none}
.reader-subject,.reader-body,.reader-from-email,.reader-from-name{overflow-wrap:anywhere}
.reader-head{flex-wrap:wrap}
.reader-head>div{min-width:0;flex:1}
.reader-date{max-width:100%}
.mail-folder.active .mail-folder-count.unread{color:#fff}
.mail-profile{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:start;row-gap:10px}
.mail-profile-text{min-width:0;overflow:visible}
.mail-profile-name,.mail-profile-email{display:block;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
.mail-profile-actions{grid-column:2;justify-self:end}
.label-popover{max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);overflow-y:auto}
.settings-content .set-row-text{min-width:0;overflow-wrap:anywhere}
.switch,.set-row>.btn{flex:none}
.switch:has(input:disabled){opacity:.45;cursor:not-allowed}
.switch input:disabled+.slider{cursor:not-allowed}
.toast{max-width:calc(100vw - 32px);overflow-wrap:anywhere}
body:not(.admin-page)>.toast{
  bottom:max(26px, env(safe-area-inset-bottom));transform:translate(-50%,16px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity 150ms,transform 150ms,visibility 150ms;
}
body:not(.admin-page)>.toast.show{transform:translate(-50%,0);opacity:1;visibility:visible}
.admin-page main{min-width:0}
.admin-page main>div,.admin-page .modal-box{min-width:0;overflow-wrap:anywhere}
.admin-page aside{height:100dvh}
.admin-page aside>div:last-child>div{min-width:0;overflow-wrap:anywhere}
.admin-page .modal-box{max-height:calc(100dvh - 32px)}
.admin-page .toast{bottom:max(20px,env(safe-area-inset-bottom));max-width:calc(100vw - 40px)}
.admin-page [hidden]{display:none!important}
@media(max-width:900px){
  .admin-page>div.flex.min-h-screen{flex-direction:column}
  .admin-page aside{position:static;width:100%;height:auto;border-right:0;border-bottom:1px solid #1f1f1f}
  .admin-page aside>div:first-child{height:56px;padding:8px 20px}
  .admin-page aside nav{display:flex;gap:6px;padding:8px 16px;overflow-x:auto}
  .admin-page aside nav>div{margin:0!important;flex:none}
  .admin-page aside nav a{margin:0!important}
  .admin-page aside nav>div>div:first-child{display:none}
  .admin-page aside nav>div>div:last-child{display:flex;gap:6px}
  .admin-page aside nav a{white-space:nowrap;margin:0}
  .admin-page aside>div:last-child{padding:8px 20px}
  .admin-page main{margin-left:0;width:100%}
  .admin-page main>header{padding:12px 20px;gap:12px;height:auto;min-height:64px}
  .admin-page main>div{padding:20px}
}
@media(max-width:640px){
  .settings-nav-btn{width:auto}
  .settings-sidebar{max-width:100%;min-width:0}
  .label-grid{grid-template-columns:minmax(0,1fr)}
  .modal-box{padding:20px;max-height:calc(100dvh - 32px)}
  .modal-overlay{padding:16px}
  .set-card{padding:20px}
  .set-form-actions,.modal-actions{flex-wrap:wrap}
  .nav-inner{gap:12px}
  .nav-right{gap:8px}
  .home-page .nav-right>.nav-link{display:none}
  .nav-cta{padding:0 12px}
  .split-media{padding:20px}
  .split-media-row{gap:10px;flex-wrap:wrap}
  .split-media-row>div{flex:1}
  .admin-page main>div{padding:16px}
  .admin-page main>header{flex-wrap:wrap;padding:12px 16px}
  .admin-page .set-row{align-items:flex-start;gap:12px}
  .admin-page .set-row-text{min-width:0}
  .admin-page .gen-tab{white-space:nowrap;flex:none}
  .admin-page .modal-box>div{padding-left:16px;padding-right:16px}
  #user-modal .modal-box>div:first-child{flex-wrap:wrap}
  #user-modal .modal-box>div:first-child>div:first-child{width:100%}
  #modal-name{white-space:normal}
  #modal-userid{overflow-wrap:anywhere}
}
@media(max-width:560px){
  .mail-shell{grid-template-columns:136px minmax(0,1fr)}
  .mail-sidebar-scroll{padding:12px 6px}
  .mail-folder{gap:6px;font-size:12px;padding:9px 4px}
  .mail-folder-count{flex:none;padding:1px 5px!important}
  .mail-list-head{padding:12px 10px}
  .mail-row{padding:12px 10px;gap:7px}
  .mail-row>.mail-avatar{display:none}
  .mail-profile{flex-wrap:wrap;gap:6px}
  .mail-profile-text{flex-basis:70px}
  .mail-profile-actions{margin-left:auto}
  .reader-head .reader-date{flex:0 1 calc(100% - 54px);max-width:calc(100% - 54px);margin-left:54px;white-space:normal}
}
