.theme-peach{border-color:#ecc9b7;background:linear-gradient(160deg,#fff,#fff4ec)}
.theme-lavender{border-color:#d9caec;background:linear-gradient(160deg,#fff,#f6f1fc)}
.wall-post-photo img,.wall-post-photo video{display:block;width:100%;max-height:600px;object-fit:contain;border-radius:20px}
.wall-composer textarea,#server-wall-edit-form textarea{width:100%;min-height:130px;resize:vertical;font:inherit;border:1px solid #eadfe2;border-radius:18px;padding:16px;box-sizing:border-box}
.wall-compose-controls{flex-wrap:wrap;gap:12px}.wall-compose-controls select{max-width:100%;font:inherit}
.wall-post-actions{display:flex;flex-wrap:wrap;gap:8px}.wall-comment-form input{min-width:0;flex:1}
.chat-photo,.one-view-photo img{max-width:100%;max-height:65vh;border-radius:20px;object-fit:contain;user-select:none;-webkit-user-select:none}
.chat-body .chat-input{display:flex;gap:8px}.chat-body .chat-input input{flex:1;min-width:0}.chat-body .video-circle{transform:scaleX(-1)}
.promotion-offers article{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:16px 0}.promotion-offers article h3{flex:1}
.notice{line-height:1.6}.wall-post,.message{overflow-wrap:anywhere}
[dir=rtl] .chat-input,[dir=rtl] .wall-author{text-align:right}
@media(max-width:760px){
 .wall-compose-controls{display:grid;grid-template-columns:1fr 1fr}.wall-compose-controls .primary{grid-column:1/-1}
 .wall-compose-controls label{min-width:0}.wall-compose-controls select{width:100%}
 .wall-post-actions .outline{padding:9px 12px}.wall-post header{flex-wrap:wrap;gap:10px}
 .promotion-offers article{display:block}.promotion-offers article button{margin-top:10px}
 .chat-header{flex-wrap:wrap;gap:10px}.chat-photo{max-height:45vh}.message{max-width:92%}
 .setting-row{flex-wrap:wrap;gap:12px}.setting-row .feature-actions{flex-wrap:wrap}
 input,select,textarea{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.profile-card,.chip,.outline,.primary{transition:none!important}}

.presence{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px;font-weight:500;vertical-align:middle}.presence .icon{width:17px;height:17px}.presence small{font-size:15px;line-height:1.5}.presence.is-online{color:#247746}.presence.is-offline{color:#b5283e}

/* Readability takes priority over keeping labels on a single line. */
body{font-size:17px;line-height:1.65}
button,input,select,textarea{font-size:17px;line-height:1.5}
button,.outline,.primary,.chip{white-space:normal;overflow-wrap:anywhere;height:auto;min-height:46px}
.link{min-height:36px}.card-info h3{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;font-size:22px;line-height:1.45}
.card-info p,.card-goals span,.card-tags span,.zodiac-badge{font-size:16px;line-height:1.6}
.server-premium-badge{font-size:14px}.demo-note,.muted,.photo-privacy,.composer-help,.photo-add small,.message small{font-size:15px;line-height:1.65}
.field,.consent,.feature-toggle,.setting-row{font-size:17px;line-height:1.65}
.field input,.field select,.field textarea{min-height:50px}.field textarea{min-height:125px}
.setting-row,.blocked-row{gap:16px;flex-wrap:wrap}.setting-row>*,.blocked-row>*{min-width:0;max-width:100%}
.saved-search-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.sidebar{overflow-y:auto;padding-bottom:24px}.sidebar-bottom{padding-bottom:20px}
.sidebar .account small,.menu-footer{font-size:14px}.nav-button{font-size:17px;line-height:1.5}
.page-heading p,.welcome-copy .description{font-size:18px;line-height:1.7}
.chat-contact strong{font-size:18px}.chat-contact p{font-size:15px}.chat-list{min-width:0}
.messages{overflow-anchor:auto}.message{font-size:17px;line-height:1.65}
.loveano-voice{max-width:100%}.video-circle-shell{flex:none}
.wall-post-text,.wall-comment-text{font-size:18px;line-height:1.75}
.wall-post header,.wall-post footer{gap:12px;flex-wrap:wrap}
@media(max-width:650px){
 body{font-size:17px}.workspace{padding-bottom:150px}
 .card-info{padding:18px}.card-info h3{font-size:21px}
 .filter-strip{flex-wrap:wrap;gap:10px}.filter-strip .chip{font-size:16px}
 .chat-body .chat-input{flex-wrap:nowrap}.chat-input input{width:0;min-width:0;font-size:17px}
 .chat-input button{flex:none;padding:12px}.chat-header strong{overflow-wrap:anywhere}
 .welcome-actions{flex-wrap:wrap}.welcome-actions>*{max-width:100%}
 .auth-field input{min-width:0;font-size:17px}.auth-right{overflow-wrap:anywhere}
}
@media(max-width:420px){.profile-grid{grid-template-columns:1fr}.portrait-wrap{height:360px}.range-line{flex-wrap:wrap}.range-line>*{min-width:100px;flex:1}}

@media(max-width:650px){.bottom-nav{height:auto;min-height:90px;padding-top:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom));bottom:5px;gap:2px}.bottom-nav button{font-size:14px;line-height:1.35;min-width:0;min-height:66px;white-space:normal;padding:8px 3px}.bottom-nav button span{white-space:normal;overflow-wrap:normal}.bottom-nav .icon{width:24px;height:24px}}

button[data-info="language"],.language-switch{width:auto;min-width:68px;white-space:nowrap;overflow-wrap:normal;gap:5px;flex:none}.language-switch span,button[data-info="language"] span{white-space:nowrap;overflow-wrap:normal}

@media(max-width:650px){.bottom-nav>button{font-size:14px!important;min-height:80px;justify-content:flex-start;flex:1 1 0;padding:8px 3px!important}.bottom-nav>button>span:not(.badge){display:block;width:100%;min-width:0;white-space:normal!important;overflow-wrap:anywhere;line-height:1.35}.bottom-nav{align-items:stretch}.workspace{padding-bottom:165px}}

.bottom-nav>button>span.compact-nav-label{display:none}
@media(max-width:360px){.bottom-nav>button>span.full-nav-label{display:none!important}.bottom-nav>button>span.compact-nav-label{display:block;white-space:nowrap!important;overflow-wrap:normal}.bottom-nav>button{min-height:64px}.bottom-nav{min-height:84px}}

button[data-language]{width:auto;min-width:68px;white-space:nowrap;overflow-wrap:normal;gap:5px;flex:none}button[data-language]>span{display:inline-block;white-space:nowrap!important;overflow-wrap:normal;font-size:15px}button[data-language] .icon{flex:none}.promotion-offers .link{font-size:16px}
.promotion-offers>header>.link{font-size:16px}

button.link{font-size:16px!important}.topbar button[data-language]{width:auto!important;min-width:68px!important;flex-shrink:0}.topbar button[data-language]>span{min-width:2.5ch;flex:none;white-space:nowrap!important}
@media(max-width:360px){.mobile-brand .brand img{width:110px}.topbar .top-actions{gap:5px}.topbar button[data-language]{min-width:60px!important;padding-left:7px;padding-right:7px}}
