/* Shared responsive adjustments; desktop appearance remains in the original sheets. */
*,*::before,*::after{box-sizing:border-box}
html{min-width:0;-webkit-text-size-adjust:100%}
body{min-width:0;margin:0}
img,video,canvas{max-width:100%}
iframe{max-width:100%}
input,select,textarea,fieldset{min-width:0;max-width:100%}
textarea{resize:vertical}
button,.button{overflow-wrap:anywhere}
dialog{max-width:calc(100% - 24px);max-height:90vh;max-height:90dvh;overflow:auto}
.portal-main,.portal-content,#portal-content,.panel,.app>main,.main,.content,.card,.eimi-chat-layout,.eimi-chat-room{min-width:0}
.portal-identity>div,.account-list .entry>div,.profile-summary>div,.person-profile-header>div{min-width:0;overflow-wrap:anywhere}
.portal-page .entry{flex-wrap:wrap}
.portal-page .panel table{display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.table-wrap{max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.portal-sidebar .portal-nav,.eimi-chat-tools{overscroll-behavior-x:contain}
.eimi-chat-file{max-width:100%;min-width:0}
.eimi-chat-file>div,.eimi-chat-person>div{min-width:0;overflow-wrap:anywhere}
.eimi-chat-compose textarea{min-width:0;width:100%}
@media(max-width:1100px){
 .site-editor-layout{grid-template-columns:minmax(0,1fr)}
 .site-page-preview{position:relative;top:auto}
}
@media(max-width:760px){
 .app{grid-template-columns:minmax(0,1fr)}
 .topbar,.top-actions,.page-head,.section-title,.month-nav,.modal-foot{flex-wrap:wrap}
 .topbar{height:auto;min-height:64px}
 .toolbar .grow{min-width:0;flex-basis:100%}
 .person-card,.artist-card{grid-template-columns:52px minmax(0,1fr)}
 .person-card>.row-actions,.artist-card>.row-actions{grid-column:1/-1}
 .person-profile-header,.profile-summary,.site-editor-toolbar{flex-wrap:wrap}
 .modal-backdrop{padding:12px}
 .modal{max-height:90vh;max-height:90dvh}
 .calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
 .calendar-day{min-width:0;padding:5px}
 .calendar-weekdays div{padding:8px 2px;font-size:10px;overflow:hidden}
 .eimi-chat-layout{grid-template-columns:minmax(0,1fr)}
 .eimi-chat-list{max-height:200px;overflow:auto}
 .eimi-chat-messages{height:clamp(240px,48vh,400px);padding:12px}
 .eimi-chat-room header{padding:12px;flex-wrap:wrap}
 .eimi-chat-bubble{max-width:92%}
 .eimi-chat-compose{padding:12px;gap:8px;flex-wrap:nowrap}
 .eimi-chat-compose>button{min-width:44px;min-height:44px;flex-shrink:0}
 .eimi-chat-tools{max-width:100%;padding-inline:12px}
 .portal-heading,.panel-heading,.workspace-actions{flex-wrap:wrap}
 .portal-page input,.portal-page select,.portal-page textarea,.form-control{font-size:16px}
 .toasts{left:12px;right:12px;bottom:12px}
 .toast{overflow-wrap:anywhere}
}
@media(max-width:480px){
 body>header.eimi-site-header{padding-inline:12px;gap:8px;height:72px}
 body>header.eimi-site-header .brand{flex:0 1 120px;width:120px;min-width:65px}
 body>header.eimi-site-header .menu{padding:8px;min-height:40px;font-size:12px}
 body>header.eimi-site-header .theme{flex-basis:36px;width:36px;height:36px}
 body>header.eimi-site-header nav{max-height:calc(100dvh - 72px);overflow-y:auto}
 .portal-main{padding-inline:12px}
 .portal-page .panel{padding:14px}
 .portal-heading h1{font-size:clamp(20px,6vw,25px);overflow-wrap:anywhere}
 .portal-topbar{justify-content:flex-start}
 .portal-stats,.portal-quick-grid{grid-template-columns:minmax(0,1fr)}
 .account-list .entry>div,.accounts-list li>div{min-width:0;flex-basis:calc(100% - 60px)}
 .portal-page .panel form{grid-template-columns:minmax(0,1fr)}
 .portal-page .panel form>button{min-width:0;max-width:100%}
 .hero{padding-inline:5%;gap:24px;min-height:0}
 .hero h1{font-size:clamp(30px,10vw,52px);overflow-wrap:anywhere}
 .section-heading{flex-wrap:wrap;gap:16px}
 #artistes .section-heading h2{font-size:clamp(36px,12vw,58px)}
 footer{padding-inline:5%;overflow-wrap:anywhere}
 .content{padding:12px}
 .nav{grid-template-columns:minmax(0,1fr)}
 .form-grid,.grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}
 .span-2{grid-column:auto}
 .eimi-chat-emojis{grid-template-columns:repeat(6,minmax(0,1fr));width:calc(100% - 24px);margin-inline:12px;padding:8px}
 .eimi-chat-compose textarea{padding:12px;min-height:60px}
}
@media(max-height:500px) and (orientation:landscape){
 .portal-sidebar,.sidebar{position:relative;height:auto}
 .modal{max-height:88dvh}
 body>header.eimi-site-header nav{max-height:calc(100dvh - 80px);overflow-y:auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
