/* Kovcheg Stage 71: editor surfaces and native file-picker tone in both themes. */
body.shelter-dark{
 --kv71-card:#242424;--kv71-soft:#2c2c2c;--kv71-field:#303030;
 --kv71-border:#414141;--kv71-text:#efefef;--kv71-muted:#aeb6c1;
 --kv71-link:#a0cafa;--kv71-shadow:0 8px 25px #0004;
}
body.shelter-light{
 --kv71-card:#ffffff;--kv71-soft:#f2f6fa;--kv71-field:#f8fafd;
 --kv71-border:#d5e0ec;--kv71-text:#25394e;--kv71-muted:#62758c;
 --kv71-link:#316da8;--kv71-shadow:0 7px 23px #213b5615;
}
body.kv-page-animal_manage :is(.shelter-editor,.shelter-editor-box,.kv-animal-media-admin,.kv-media-admin-card){
 min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
 color:var(--kv71-text)!important;background:var(--kv71-card)!important;
 background-image:none!important;border:1px solid var(--kv71-border)!important;
 box-shadow:var(--kv71-shadow)!important;
}
body.kv-page-animal_manage :is(.shelter-editor-box[open]>summary,.shelter-editor-box>summary:hover){
 color:var(--kv71-text)!important;background:var(--kv71-soft)!important;
 border-color:var(--kv71-border)!important;
}
body.kv-page-animal_manage :is(.shelter-editor-top strong,.shelter-editor-box summary span,.kv-media-admin-card h2,.kv-animal-media-admin h2){
 color:var(--kv71-text)!important;
}
body.kv-page-animal_manage :is(.shelter-editor-top p,.shelter-editor-box summary small,.shelter-editor .stack-form label,.kv-media-admin-card p,.kv-media-admin-card label,.shelter-editor-tip){
 color:var(--kv71-muted)!important;
}
body.kv-page-animal_manage :is(.shelter-editor-box input:not([type=file]):not([type=checkbox]),.shelter-editor-box select,.shelter-editor-box textarea,.kv-media-admin-card input:not([type=file]):not([type=checkbox]),.kv-media-admin-card textarea){
 background:var(--kv71-field)!important;background-image:none!important;
 color:var(--kv71-text)!important;border:1px solid var(--kv71-border)!important;
 border-radius:10px!important;box-shadow:none!important;
 box-sizing:border-box!important;max-width:100%!important;
}
body.kv-page-animal_manage :is(.shelter-editor-box input,.shelter-editor-box select,.shelter-editor-box textarea,.kv-media-admin-card input,.kv-media-admin-card textarea):focus-visible{
 outline:2px solid var(--kv71-link)!important;outline-offset:2px;
}
body.kv-page-animal_manage :is(.shelter-editor-box input::placeholder,.shelter-editor-box textarea::placeholder,.kv-media-admin-card input::placeholder,.kv-media-admin-card textarea::placeholder){color:var(--kv71-muted)!important}
body.kv-page-animal_manage .shelter-editor-preview{
 object-fit:contain!important;max-width:min(100%,450px)!important;
 max-height:280px!important;border-radius:12px!important;
 background:var(--kv71-soft)!important;
}
body.kv-page-animal_manage .kv-manage-heading :is(h1,p){
 color:var(--kv71-text)!important;
}
/* Custom accessible upload input: browser's bright native field remains keyboard-operable but visually hidden. */
body.kv-page-animal_manage .kv-upload-label{
 display:block!important;min-width:0!important;width:100%!important;
 color:var(--kv71-muted)!important;
}
body.kv-page-animal_manage .kv-upload-picker{
 display:flex!important;align-items:center!important;gap:12px!important;
 flex-wrap:wrap!important;position:relative!important;box-sizing:border-box!important;
 width:100%!important;min-width:0!important;max-width:100%!important;
 margin-top:7px!important;padding:9px 10px!important;min-height:55px!important;
 border:1px solid var(--kv71-border)!important;border-radius:11px!important;
 background:var(--kv71-field)!important;background-image:none!important;
 color:var(--kv71-text)!important;box-shadow:inset 0 1px 2px #0000000b!important;
 cursor:pointer!important;overflow:hidden!important;
}
body.kv-page-animal_manage .kv-upload-picker:hover{
 border-color:var(--kv71-link)!important;background:var(--kv71-soft)!important;
}
body.kv-page-animal_manage .kv-upload-picker:focus-within{
 outline:2px solid var(--kv71-link)!important;outline-offset:2px!important;
}
body.kv-page-animal_manage .kv-upload-picker .kv-upload-input{
 position:absolute!important;top:0!important;left:0!important;
 width:1px!important;height:1px!important;min-width:1px!important;
 max-width:1px!important;opacity:0!important;padding:0!important;
 margin:0!important;border:0!important;overflow:hidden!important;
}
body.kv-page-animal_manage .kv-upload-button{
 flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;
 justify-content:center!important;box-sizing:border-box!important;
 min-height:35px!important;padding:8px 12px!important;
 background:var(--kv71-soft)!important;border:1px solid var(--kv71-border)!important;
 border-radius:8px!important;color:var(--kv71-text)!important;
 font:700 12px/1.3 system-ui,sans-serif!important;
}
body.kv-page-animal_manage .kv-upload-filename{
 flex:1 1 130px!important;min-width:0!important;max-width:100%!important;
 overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;
 font:400 12px/1.5 system-ui,sans-serif!important;
 color:var(--kv71-muted)!important;
}
body.kv-page-animal_manage .kv-upload-picker.has-file .kv-upload-filename{
 color:var(--kv71-text)!important;
}
body.kv-page-animal_manage .kv-upload-picker.has-file .kv-upload-button{
 color:var(--kv71-link)!important;
}
body.kv-page-animal_manage .shelter-editor-box .button,
body.kv-page-animal_manage .kv-media-admin-card .button{
 border-radius:10px!important;min-height:42px!important;
 box-sizing:border-box!important;
}
/* Fallback for any remaining editor file controls not yet using the custom picker. */
body.kv-page-animal_manage .shelter-editor input[type=file]:not(.kv-upload-input){
 display:block!important;max-width:100%!important;width:100%!important;
 box-sizing:border-box!important;background:var(--kv71-field)!important;
 color:var(--kv71-muted)!important;border:1px solid var(--kv71-border)!important;
 padding:8px!important;border-radius:9px!important;color-scheme:normal!important;
}
body.kv-page-animal_manage .shelter-editor input[type=file]:not(.kv-upload-input)::file-selector-button{
 background:var(--kv71-soft)!important;color:var(--kv71-text)!important;
 border:1px solid var(--kv71-border)!important;border-radius:8px!important;
 padding:8px 11px!important;margin-right:10px!important;cursor:pointer!important;
}
/* Use the actual dogs' and cats' photographs in the home gallery; keep faces whole. */
body.kv-page-home .v4-animals-preview .v4-animal-photo{
 background:var(--kv71-card)!important;border:1px solid var(--kv71-border)!important;
 box-shadow:var(--kv71-shadow)!important;
}
body.kv-page-home .v4-animals-preview .v4-animal-photo img{
 object-fit:contain!important;object-position:center!important;
 background:var(--kv71-card)!important;
}
body.kv-page-home .v4-hero-gallery figure{
 background:var(--kv71-soft)!important;border-color:var(--kv71-card)!important;
 box-shadow:var(--kv71-shadow)!important;
}
body.kv-page-home .v4-hero-gallery figure img{
 object-fit:contain!important;object-position:center!important;
}
@media(max-width:780px){
 body.kv-page-animal_manage .shelter-editor{padding:12px!important}
 body.kv-page-animal_manage .shelter-editor-box form{padding:12px!important}
 body.kv-page-animal_manage .kv-upload-picker{gap:7px!important}
 body.kv-page-animal_manage .kv-upload-button{padding:8px 9px!important;font-size:11px!important}
 body.kv-page-home .v4-animals-preview .v4-animal-photo img{object-fit:contain!important}
}
