/* Ковчег / Stage 66: site-wide polish and phone-native screens. */
/* Shared coherent night/day surfaces, without white admin panels on dark. */
body.shelter-dark{
 --kv66-bg:#141414;--kv66-card:#232323;--kv66-card2:#282828;
 --kv66-border:#393939;--kv66-text:#ececec;--kv66-sub:#b6b6b6;
 --kv66-link:#9fcaff;--kv66-input:#2d2d2d;--kv66-shade:0 5px 23px #0006;
}
body.shelter-light{
 --kv66-bg:#f2f5f9;--kv66-card:#fff;--kv66-card2:#f7fafd;
 --kv66-border:#dbe4ed;--kv66-text:#25384f;--kv66-sub:#62758b;
 --kv66-link:#3975b4;--kv66-input:#f6f8fb;--kv66-shade:0 5px 24px #213f6618;
}
body :is(.kv-editable-page,.kv-page-edit,.kv-access-card,.kv-guardian-pet){
 box-sizing:border-box;min-width:0;
}
.kv-guardian-pet{
 display:flex!important;flex-direction:row!important;align-items:center!important;
 gap:14px!important;padding:13px!important;background:var(--kv66-card)!important;
 border:1px solid var(--kv66-border)!important;border-radius:12px!important;
 box-shadow:var(--kv66-shade);
}
.kv-guardian-pet .kv-guardian-pet-image{
 width:96px!important;height:96px!important;flex:0 0 96px!important;
 max-width:96px;max-height:96px;aspect-ratio:1!important;object-fit:cover!important;
 display:block!important;border:1px solid var(--kv66-border);border-radius:12px!important;
}
.kv-guardian-pet .kv-guardian-pet-placeholder{
 display:grid!important;place-items:center;font-size:33px;background:var(--kv66-card2)!important;
}
.kv-guardian-pet .kv-guardian-pet-details{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;flex:1;}
.kv-guardian-pet .kv-guardian-pet-details strong{color:var(--kv66-text)!important;font-size:17px}
.kv-guardian-pet .kv-guardian-pet-details small{color:var(--kv66-sub)!important;font-size:12px}
.kv-guardian-pet a{color:var(--kv66-link)!important;font-size:12px}
.kv-page-edit-nav{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px}
.kv-page-edit-nav a{padding:9px 12px;border:1px solid var(--kv66-border);border-radius:10px;color:var(--kv66-link)!important;text-decoration:none!important;font-size:12px}
.kv-page-edit-nav a.is-selected{background:var(--kv66-card2);font-weight:700}
.kv-page-edit textarea{resize:vertical;min-height:180px;width:100%;box-sizing:border-box}
.kv-page-edit-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.kv-editable-page,.kv-access-card{
 margin:22px auto;padding:clamp(18px,3vw,30px);max-width:1150px;
 background:var(--kv66-card)!important;border:1px solid var(--kv66-border)!important;
 color:var(--kv66-text)!important;border-radius:16px;box-shadow:var(--kv66-shade);
}
.kv-editable-page h1,.kv-access-card h1{margin:0 0 20px;color:var(--kv66-text)!important}
.kv-editable-page-copy{font-size:15px;line-height:1.7;overflow-wrap:anywhere;white-space:normal}
.kv-access-page{max-width:600px;margin:30px auto;min-height:48vh}
.kv-access-card p{color:var(--kv66-sub)!important;font-size:14px;line-height:1.65}
.kv-access-card a{color:var(--kv66-link)!important}
.kv-manage-heading{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
body.shelter-dark :is(.shelter-editor,.shelter-editor-box,.shelter-editor-top,.shelter-admin-shortcuts){
 background:var(--kv66-card)!important;color:var(--kv66-text)!important;
 background-image:none!important;border-color:var(--kv66-border)!important;
}
body.shelter-dark :is(.shelter-editor h2,.shelter-editor strong,.shelter-editor summary,.shelter-admin-shortcuts span){
 color:var(--kv66-text)!important;
}
body.shelter-dark :is(.shelter-editor-box input,.shelter-editor-box select,.shelter-editor-box textarea){
 background:var(--kv66-input)!important;border-color:var(--kv66-border)!important;color:var(--kv66-text)!important
}
body.shelter-dark :is(.shelter-editor p,.shelter-editor-box small,.shelter-editor label){color:var(--kv66-sub)!important}
body.shelter-dark .shelter-editor-success{background:#253b32!important;color:#c5eedb!important}
body.shelter-dark .kv-page-edit-nav a.is-selected{background:#343434!important}
body.shelter-dark .kv-access-card .stack-form :is(input,select,textarea){color:#f0f0f0!important;background:#303030!important;border-color:#4a4a4a!important}
.kv-msg-contacts{margin-top:10px;padding:12px;border-top:1px solid var(--kv66-border);background:var(--kv66-card);min-width:0}
.kv-msg-contacts-heading{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:3px 0 10px}
.kv-msg-contacts-heading strong{font-size:13px;color:var(--kv66-text)!important}
.kv-msg-contacts-heading a{font-size:12px;color:var(--kv66-link)!important;text-decoration:none!important}
.kv-msg-contact{display:flex;align-items:center;gap:10px;min-height:56px;padding:7px 5px;border-radius:8px;color:var(--kv66-text)!important;text-decoration:none!important}
.kv-msg-contact:hover{background:var(--kv66-card2)}
.kv-msg-contact img{width:40px!important;height:40px!important;max-width:40px;flex:0 0 40px;border-radius:50%;object-fit:cover}
.kv-msg-contact span:nth-child(2){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.kv-msg-contacts p{color:var(--kv66-sub);font-size:12px}
body.is-community :is(.kv-comment-avatar,.kv-avatar-comment img,.kv-comment>img){
 width:35px!important;height:35px!important;min-width:35px!important;max-width:35px!important;
 min-height:35px!important;max-height:35px!important;flex:0 0 35px!important;
 object-fit:cover!important;object-position:center!important;aspect-ratio:1!important;border-radius:50%!important;
}
body.is-community .kv-comment{align-items:flex-start!important}
body.is-community .kv-comment-main{flex:1 1 auto!important;min-width:0!important}
@media(max-width:780px){
 /* No footers/secondary menus; keep header; content fills phone. */
 body.kv-page-community_messages{padding:0!important;overflow:hidden!important;height:100dvh!important}
 body.kv-page-community_messages .site-main,
 body.kv-page-community_messages.is-community .site-main{
  width:100%!important;max-width:none!important;min-height:0!important;height:calc(100dvh - 57px)!important;
  padding:0!important;margin:0!important;overflow:hidden!important;
 }
 body.kv-page-community_messages .kv-vk-app,
 body.kv-page-community_messages .kv-vk-main,
 body.kv-page-community_messages .kv-social,
 body.kv-page-community_messages .kv-messages-page{
  margin:0!important;padding:0!important;max-width:none!important;width:100%!important;
  height:100%!important;min-width:0!important;min-height:0!important;overflow:hidden!important;
 }
 body.kv-page-community_messages .kv-vk-messages-layout .kv-msg-shell{
  width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;
  min-height:0!important;margin:0!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;
 }
 body.kv-page-community_messages .kv-msg-conversation{height:100%!important;min-height:0!important}
 body.kv-page-community_messages .kv-msg-shell.is-chat-open .kv-msg-thread{
  padding:12px 10px!important;flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;
 }
 body.kv-page-community_messages .kv-msg-list{height:100%!important;border:0!important}
 body.kv-page-community_messages .kv-msg-compose{
  margin:0!important;padding:6px 8px max(7px,env(safe-area-inset-bottom,0px))!important;
  border-top:1px solid var(--kv66-border)!important;border-radius:0!important;
 }
 body.kv-page-community_messages .kv-msg-person{
  border-bottom:1px solid var(--kv66-border)!important;
  background:var(--kv66-card)!important;
 }
 body.kv-page-community_messages .kv-msg-back{
  width:42px!important;min-width:42px!important;height:42px!important;
  background:var(--kv66-card2)!important;border-radius:10px;flex:0 0 42px!important;
 }
 body.kv-page-community_messages .kv-msg-bubble{max-width:90%!important}
 body.kv-page-community_messages .kv-msg-contacts{margin-bottom:6px}
 body.kv-page-community_messages .kv-msg-list-header{background:var(--kv66-card)!important}
 /* Light and night sections match profile styling */
 body.is-community :is(.kv-stage51-section,.kv-album-header,.kv-album-new,.kv-album-cover,.kv-stage52-photo-card,.crm-panel){
  box-shadow:var(--kv66-shade)!important;border:1px solid var(--kv66-border)!important;
  border-radius:13px!important;
 }
 body.shelter-dark .kv-stage51-section,
 body.shelter-dark .kv-album-header,
 body.shelter-dark .kv-album-new{
  background:var(--kv66-card)!important;color:var(--kv66-text)!important;
 }
 /* Less unnecessary introductory copy on mobile photo album. */
 body.kv-page-community_photos .kv-album-header{
  padding:9px 14px!important;margin:0 0 8px!important;background:transparent!important;
  border:0!important;box-shadow:none!important;
 }
 body.kv-page-community_photos .kv-album-header h1{font-size:16px!important;margin:0!important}
 body.kv-page-community_photos .kv-album-index{gap:8px!important}
 body.kv-page-community_guests .kv-stage51-section:first-child{padding:11px 14px!important}
 body.kv-page-community_guests .kv-stage51-section:first-child h1{margin:0 0 6px!important;font-size:19px!important}
 body.kv-page-community_guests .kv-stage51-section:first-child p{font-size:12px!important;margin:0!important}
 /* Register compact, with no intro illustration and minimal scrolling. */
 .kv-register-compact.v5-auth-wrap{
  display:block!important;min-height:0!important;max-width:520px!important;
  width:calc(100% - 10px)!important;margin:10px auto!important;
  padding:0!important;overflow:visible!important;
 }
 .kv-register-compact .v5-auth-art{display:none!important}
 .kv-register-compact .v5-auth-form{
  box-sizing:border-box;max-width:none!important;width:100%!important;
  margin:0!important;padding:14px 15px!important;
  background:var(--kv66-card)!important;border:1px solid var(--kv66-border)!important;
  border-radius:13px!important;box-shadow:var(--kv66-shade)!important;
 }
 .kv-register-compact .v5-auth-form h1{font-size:20px!important;margin:0 0 10px!important;line-height:1.2!important}
 .kv-register-compact .v5-register-form{gap:6px!important;padding:0!important;margin:0!important}
 .kv-register-compact .v5-register-form label{gap:3px!important;font-size:11px!important;line-height:1.2!important;margin:0!important}
 .kv-register-compact .v5-register-form label small{display:inline!important;font-size:10px!important}
 .kv-register-compact .v5-register-form input:not([type=hidden]){
  height:38px!important;min-height:38px!important;padding:6px 9px!important;font-size:14px!important;
  width:100%!important;margin:0!important;
 }
 .kv-register-compact .v5-two-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
 .kv-register-compact .v5-register-form button[type=submit]{
  width:100%!important;min-height:40px!important;margin-top:4px!important;padding:9px!important;
 }
 .kv-register-compact .v5-auth-switch{margin:8px 0 0!important;font-size:11px!important}
 .kv-access-page{margin:10px auto;min-height:0}
 .kv-access-card{padding:20px 15px;margin:0 8px}
 .kv-guardian-pet{padding:9px!important;gap:10px!important}
 .kv-guardian-pet .kv-guardian-pet-image{
  width:76px!important;height:76px!important;flex-basis:76px!important;max-width:76px!important;max-height:76px!important;
 }
 .kv-guardian-pet .kv-guardian-pet-details strong{font-size:15px!important}
 .kv-manage-heading{gap:8px}
 .kv-page-edit textarea{font-size:16px;min-height:210px}
 body.kv-page-animal_manage .shelter-editor{margin:14px auto!important}
}
@media(max-width:365px){
 .kv-register-compact .v5-register-form input:not([type=hidden]){height:36px!important;min-height:36px!important}
 .kv-register-compact .v5-two-fields{gap:5px!important}
 .kv-register-compact .v5-auth-form{padding:10px!important}
}
