/* Kiyo 11.3 — stable compatibility/features layer */
.kc-hidden-feature{display:none!important}

/* Wallpaper: unlike 11.2, the panels become translucent so the image is actually visible. */
.kc-app.has-wallpaper{
  position:relative!important;
  isolation:isolate;
  background-image:linear-gradient(rgba(5,6,8,var(--wall-ui-opacity,.34)),rgba(5,6,8,var(--wall-ui-opacity,.34))),var(--kenji-wallpaper)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-attachment:fixed!important;
}
.kc-app.has-wallpaper>.bg-dc-tertiary,
.kc-app.has-wallpaper>nav{background:rgba(6,7,9,calc(.44 + var(--wall-ui-opacity,.34)*.42))!important;backdrop-filter:blur(13px) saturate(.88)}
.kc-app.has-wallpaper>.bg-dc-secondary,
.kc-app.has-wallpaper>aside{background:rgba(10,12,17,calc(.44 + var(--wall-ui-opacity,.34)*.40))!important;backdrop-filter:blur(15px) saturate(.9)}
.kc-app.has-wallpaper>.bg-dc-primary,
.kc-app.has-wallpaper>section{background:rgba(20,22,29,calc(.28 + var(--wall-ui-opacity,.34)*.48))!important;backdrop-filter:blur(8px) saturate(.92)}
.kc-app.has-wallpaper .bg-dc-secondary{background-color:rgba(14,16,22,calc(.43 + var(--wall-ui-opacity,.34)*.39))!important}
.kc-app.has-wallpaper .bg-dc-primary{background-color:rgba(24,26,33,calc(.36 + var(--wall-ui-opacity,.34)*.46))!important}
.kc-app.has-wallpaper .bg-dc-tertiary{background-color:rgba(18,20,26,calc(.42 + var(--wall-ui-opacity,.34)*.42))!important}
.kc-app.has-wallpaper .bg-dc-dock{background-color:rgba(7,8,11,calc(.58 + var(--wall-ui-opacity,.34)*.34))!important;backdrop-filter:blur(14px)}
.kc-app.has-wallpaper .bg-dc-mod{background-color:rgba(25,28,36,calc(.55 + var(--wall-ui-opacity,.34)*.34))!important;backdrop-filter:blur(12px)}
.kc-app.has-wallpaper header{background-color:rgba(10,11,15,calc(.28 + var(--wall-ui-opacity,.34)*.50));backdrop-filter:blur(12px)}
.kc-app.has-wallpaper footer{background-color:rgba(8,9,12,calc(.58 + var(--wall-ui-opacity,.34)*.32))!important}

/* Keep the three desktop columns mathematically stable. */
.kc-app{width:100vw;max-width:100vw;min-width:0}
.kc-app>nav,.kc-app>aside,.kc-app>section{min-height:0}
.kc-app>section{min-width:0;overflow:hidden}
.kc-app img{max-width:100%}

.kc-enh-card{border:1px solid rgba(255,255,255,.1);background:#2b2d31;border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:10px}
.kc-app.has-wallpaper .kc-enh-card{background:rgba(24,26,34,.74);backdrop-filter:blur(12px)}
.kc-enh-card h3{font-size:14px;font-weight:700;color:#f2f3f5;margin:0}
.kc-enh-card p{font-size:12px;line-height:1.45;color:#b5bac1;margin:0}
.kc-enh-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.kc-enh-btn{border:0;border-radius:4px;background:#4e5058;color:#fff;padding:8px 12px;font-size:12px;font-weight:600}
.kc-enh-btn:hover{background:#6d6f78}.kc-enh-btn.primary{background:#5865f2}.kc-enh-btn.primary:hover{background:#4752c4}
.kc-enh-btn.danger{background:#da373c}.kc-enh-btn.danger:hover{background:#a12828}.kc-enh-btn:disabled{opacity:.45;cursor:not-allowed}
.kc-wallpaper-preview{height:145px;border-radius:8px;background:#1e1f22 center/cover no-repeat;display:grid;place-items:center;color:#949ba4;font-size:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.kc-range-label{display:grid;grid-template-columns:max-content minmax(120px,1fr) 42px;gap:12px;align-items:center;font-size:12px;color:#b5bac1}
.kc-range-label input{width:100%;min-width:0}.kc-range-label output{text-align:right}

#kc-admin-panel{position:absolute;inset:0;z-index:20;background:#313338;padding:32px 40px;overflow:auto}
.kc-admin-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}
.kc-admin-head h2{font-size:22px;font-weight:800;margin:0}.kc-admin-head p{font-size:12px;color:#b5bac1;margin:4px 0 0}
.kc-admin-grid{display:grid;grid-template-columns:1fr;gap:14px;max-width:760px}
.kc-admin-search{display:flex;gap:8px}.kc-admin-search input{min-width:0;flex:1;background:#1e1f22;border:0;border-radius:4px;color:#fff;padding:9px 10px;font-size:13px;outline:none}
.kc-admin-results{display:flex;flex-direction:column;gap:2px;margin-top:8px}
.kc-admin-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 0;border-top:1px solid rgba(255,255,255,.07)}
.kc-admin-avatar{width:36px;height:36px;border-radius:10px;background:#1e1f22;display:grid;place-items:center;overflow:hidden;font-size:11px;font-weight:700}.kc-admin-avatar img{width:100%;height:100%;object-fit:cover}
.kc-admin-copy{min-width:0}.kc-admin-copy strong,.kc-admin-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kc-admin-copy strong{font-size:13px}.kc-admin-copy small{font-size:11px;color:#949ba4;margin-top:2px}
.kc-admin-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.kc-audio-record{position:relative}.kc-audio-record.is-recording{color:#f23f43!important;animation:kc-rec-pulse 1s ease-in-out infinite}@keyframes kc-rec-pulse{50%{opacity:.45}}
.kc-mic-meter{height:8px;border-radius:99px;background:#1e1f22;overflow:hidden;flex:1;min-width:120px}.kc-mic-meter i{display:block;height:100%;width:0;background:#23a559;transition:width .05s linear}

@media(max-width:900px){
  .kc-range-label{grid-template-columns:1fr 42px}.kc-range-label span{grid-column:1/-1}
}
@media(max-width:760px){
  .kc-app.has-wallpaper{background-attachment:scroll!important}
  #kc-admin-panel{padding:24px 18px}.kc-admin-item{grid-template-columns:34px minmax(0,1fr)}.kc-admin-actions{grid-column:2;justify-content:flex-start}.kc-admin-search{flex-direction:column}
}


/* Kiyo 11.4 mobile HUD fixes */
.kc-mobile-hide{display:none!important}
@media (max-width:760px) and (pointer:coarse){
  [data-kc-mobile-settings="1"]{position:fixed!important;inset:0!important;max-width:none!important;width:100%!important;height:100%!important;display:block!important;background:#0b0d12!important;z-index:9999}
  [data-kc-mobile-settings="1"] aside,
  [data-kc-mobile-settings="1"] section{position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;height:100%!important;overflow-y:auto!important;background:#0b0d12!important;padding:24px 18px calc(24px + env(safe-area-inset-bottom,0px))!important;transition:transform .24s ease,opacity .18s ease}
  [data-kc-mobile-settings="1"] aside{padding-top:28px!important;transform:translateX(0);opacity:1;z-index:2}
  [data-kc-mobile-settings="1"] section{padding-top:86px!important;transform:translateX(105%);opacity:0;z-index:3}
  [data-kc-mobile-settings="1"][data-kc-mobile-settings-state="detail"] aside{transform:translateX(-18%);opacity:0;pointer-events:none}
  [data-kc-mobile-settings="1"][data-kc-mobile-settings-state="detail"] section{transform:translateX(0);opacity:1;pointer-events:auto}
  [data-kc-mobile-settings="1"] .kc-mobile-settings-top{display:flex;flex-direction:column;gap:16px;margin-bottom:18px}
  [data-kc-mobile-settings="1"] .kc-mobile-settings-title-row{display:flex;align-items:center;gap:14px}
  [data-kc-mobile-settings="1"] .kc-mobile-settings-title-row h1{font-size:24px;line-height:1.15;font-weight:800;margin:0;color:#f2f3f5}
  [data-kc-mobile-settings="1"] .kc-mobile-x,
  [data-kc-mobile-settings="1"] .kc-mobile-back,
  [data-kc-mobile-settings="1"] .kc-mobile-dismiss{width:40px;height:40px;border:0;border-radius:14px;background:#151821;color:#f2f3f5;font-size:26px;display:grid;place-items:center;flex:0 0 40px}
  [data-kc-mobile-settings="1"] .kc-mobile-settings-search{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#0d1017;padding:14px 16px;color:#949ba4}
  [data-kc-mobile-settings="1"] .kc-mobile-settings-search span{font-size:23px;line-height:1}
  [data-kc-mobile-settings="1"] .kc-mobile-settings-search input{flex:1;background:transparent;border:0;outline:none;color:#f2f3f5;font-size:18px}
  [data-kc-mobile-settings="1"] .kc-mobile-settings-subtitle{font-size:14px;color:#b5bac1;margin-top:2px}
  [data-kc-mobile-settings="1"] aside>button{display:flex!important;align-items:center;justify-content:space-between;gap:12px;width:100%!important;border-radius:20px!important;padding:18px 18px!important;margin:0!important;background:#14171f!important;color:#f2f3f5!important;font-size:16px!important;font-weight:600!important;text-align:left!important;border-bottom:1px solid rgba(255,255,255,.06)}
  [data-kc-mobile-settings="1"] aside>button+button{margin-top:8px!important}
  [data-kc-mobile-settings="1"] aside>button::after{content:'›';font-size:28px;line-height:1;color:#949ba4}
  [data-kc-mobile-settings="1"] aside>div.my-3{display:none!important}
  [data-kc-mobile-settings="1"] aside>button[data-kc-danger="1"]{color:#ff7b82!important;background:#11151d!important}
  [data-kc-mobile-settings="1"] aside>button[data-kc-danger="1"]::after{display:none}
  [data-kc-mobile-settings="1"] .kc-mobile-section-head{position:sticky;top:-24px;z-index:5;display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:12px;margin:-62px -2px 18px;background:linear-gradient(180deg,#0b0d12 72%,rgba(11,13,18,0));padding:6px 0 14px}
  [data-kc-mobile-settings="1"] .kc-mobile-section-title{font-size:24px;font-weight:800;color:#f2f3f5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  [data-kc-mobile-settings="1"] section h2{font-size:24px!important;line-height:1.15!important;margin:0 0 18px!important;padding-right:44px!important}
  [data-kc-mobile-settings="1"] section>button.absolute{display:none!important}
  [data-kc-mobile-settings="1"] section .max-w-xl{max-width:none!important;width:100%!important}
  [data-kc-mobile-settings="1"] .kc-enh-card{border-radius:18px!important;padding:16px!important}
  [data-kc-mobile-settings="1"] label,.kc-enh-card label{max-width:100%}
  [data-kc-mobile-settings="1"] input,[data-kc-mobile-settings="1"] select,[data-kc-mobile-settings="1"] textarea{max-width:100%!important}
  [data-kc-mobile-settings="1"] .kc-range-label{grid-template-columns:1fr 42px!important}
  [data-kc-mobile-settings="1"] .kc-range-label span{grid-column:1/-1}
  [data-kc-mobile-profile="1"]{width:100%!important;max-width:none!important;padding:18px 16px 120px!important;background:#0b0d12!important;border-radius:0!important}
  [data-kc-mobile-profile="1"] img{max-width:100%;height:auto}
  [data-kc-mobile-profile="1"] button{max-width:100%}
  [data-kc-mobile-profile="1"] .kc-mobile-profile-close{position:fixed!important;top:18px!important;left:18px!important;z-index:7}
  [data-kc-mobile-profile="1"] [role="tablist"],
  [data-kc-mobile-profile="1"] nav{overflow-x:auto}
  [data-kc-mobile-profile="1"] section{overflow:visible}
  [data-kc-mobile-messages="1"],
  [data-kc-mobile-messages="1"] *{min-width:0}
}


/* Kiyo 11.5 desktop/profile fixes */
.kc-owner-badge{display:inline-flex;align-items:center;gap:5px;width:max-content;margin-top:7px;padding:4px 9px;border-radius:999px;background:linear-gradient(135deg,#f0b232,#ff7a3d);color:#17191f;font-size:11px;font-weight:900;letter-spacing:.06em;box-shadow:0 0 0 1px rgba(255,255,255,.12)}
.kc-avatar-quick{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid rgba(255,255,255,.10);background:#2b2d31;border-radius:10px}
.kc-avatar-quick>div{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.kc-avatar-quick strong{font-size:13px;color:#f2f3f5}.kc-avatar-quick small{font-size:11px;line-height:1.35;color:#949ba4}.kc-avatar-quick button,.kc-avatar-direct{border:0;border-radius:5px;background:#5865f2;color:#fff;padding:8px 12px;font-size:12px;font-weight:700;white-space:nowrap}.kc-avatar-quick button:disabled,.kc-avatar-direct:disabled{opacity:.55}.kc-avatar-direct{display:block;margin-top:8px;width:100%}
@media (pointer:fine){
  /* Narrow desktop browser windows must keep the desktop settings shell; mobile overlay rules are touch-only. */
  [data-kc-mobile-settings="1"]{position:static!important;width:auto!important;height:auto!important;display:flex!important;background:transparent!important}
  [data-kc-mobile-settings="1"] aside,[data-kc-mobile-settings="1"] section{position:relative!important;inset:auto!important;height:100%!important;opacity:1!important;transform:none!important;pointer-events:auto!important}
  [data-kc-mobile-settings="1"] aside{width:218px!important;padding:2rem .5rem 2rem 1.25rem!important;background:#2b2d31!important}
  [data-kc-mobile-settings="1"] section{width:auto!important;padding:2rem 2.5rem!important;background:#313338!important}
  [data-kc-mobile-settings="1"] .kc-mobile-settings-top,[data-kc-mobile-settings="1"] .kc-mobile-section-head{display:none!important}
}
@media (max-width:560px) and (pointer:coarse){.kc-avatar-quick{align-items:stretch;flex-direction:column}.kc-avatar-quick button{width:100%}}

/* Kiyo 11.6 — mobile full-screen shell, fixed wallpaper and intro */
html,body{width:100%;height:100%;overflow:hidden;background:#08090c}
body.kc-wallpaper-active{background:#08090c!important}
body.kc-wallpaper-active::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(rgba(5,6,8,var(--wall-ui-opacity,.34)),rgba(5,6,8,var(--wall-ui-opacity,.34))),var(--kenji-wallpaper);
  background-size:cover;background-position:center;background-repeat:no-repeat;
  transform:translateZ(0);
}
.kc-app{position:relative;z-index:1;background-color:transparent!important}
.kc-app.has-wallpaper{background-image:none!important;background-color:transparent!important}
.kc-app.has-wallpaper>nav,.kc-app.has-wallpaper>aside,.kc-app.has-wallpaper>section{position:relative;z-index:1}

/* Intro */
#kc-intro-116{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;background:#07080b;overflow:hidden;transition:opacity .42s ease,visibility .42s ease}
#kc-intro-116.kc-intro-leave{opacity:0;visibility:hidden;pointer-events:none}
#kc-intro-116::before,#kc-intro-116::after{content:"";position:absolute;width:min(72vw,760px);height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);opacity:.35;animation:kc-intro-line 1.15s ease both}
#kc-intro-116::before{top:31%;transform:rotate(-5deg)}
#kc-intro-116::after{bottom:30%;transform:rotate(4deg);animation-delay:.08s}
.kc-intro-inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;padding:28px;text-align:center}
.kc-intro-logo{width:92px;height:92px;border-radius:26px;object-fit:cover;box-shadow:0 16px 55px rgba(0,0,0,.48);animation:kc-intro-logo .72s cubic-bezier(.2,.85,.25,1.15) both}
.kc-intro-name{font-size:clamp(28px,6vw,44px);font-weight:850;letter-spacing:-.04em;color:#fff;animation:kc-intro-copy .7s .12s ease both}
.kc-intro-sub{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#8d929d;animation:kc-intro-copy .7s .2s ease both}
@keyframes kc-intro-logo{from{opacity:0;transform:translateY(18px) scale(.78) rotate(-4deg)}to{opacity:1;transform:none}}
@keyframes kc-intro-copy{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes kc-intro-line{from{opacity:0;scale:.2 1}to{opacity:.35;scale:1 1}}
@media(prefers-reduced-motion:reduce){#kc-intro-116 *{animation:none!important}#kc-intro-116::before,#kc-intro-116::after{animation:none!important}}

/* Real mobile app shell: one view at a time, no squeezed desktop columns. */
@media (max-width:760px){
  html,body,#root{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
  .kc-app{position:fixed!important;inset:0!important;width:100%!important;max-width:100%!important;height:100dvh!important;display:block!important;overflow:hidden!important;padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))!important}
  .kc-app>nav{
    position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;z-index:80!important;
    width:100%!important;height:calc(68px + env(safe-area-inset-bottom,0px))!important;
    min-height:68px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;
    gap:8px!important;padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px))!important;
    overflow-x:auto!important;overflow-y:hidden!important;background:rgba(8,9,12,.94)!important;backdrop-filter:blur(18px) saturate(.9);
    border-top:1px solid rgba(255,255,255,.08);scrollbar-width:none
  }
  .kc-app>nav::-webkit-scrollbar{display:none}
  .kc-app>nav>div.mt-auto{margin:0!important}
  .kc-app>nav .rail-btn{flex:0 0 48px!important}
  .kc-app>aside{
    position:fixed!important;inset:0 0 calc(68px + env(safe-area-inset-bottom,0px)) 0!important;z-index:20!important;
    width:100%!important;max-width:none!important;height:auto!important;min-width:0!important;display:flex!important;overflow:hidden!important;
    background:rgba(11,12,16,.96)!important;backdrop-filter:blur(16px) saturate(.92)
  }
  .kc-app>section{
    position:fixed!important;inset:0 0 calc(68px + env(safe-area-inset-bottom,0px)) 0!important;z-index:40!important;
    width:100%!important;max-width:none!important;height:auto!important;min-width:0!important;margin-left:0!important;
    background:rgba(15,16,21,.96)!important;backdrop-filter:blur(12px) saturate(.92);
    transition:transform .22s ease!important
  }
  .kc-app>section.max-md\:ml-\[72px\]{margin-left:0!important}
  .kc-app.has-wallpaper>nav{background:rgba(7,8,11,.74)!important}
  .kc-app.has-wallpaper>aside{background:rgba(9,10,14,calc(.50 + var(--wall-ui-opacity,.34)*.30))!important}
  .kc-app.has-wallpaper>section{background:rgba(14,15,20,calc(.40 + var(--wall-ui-opacity,.34)*.38))!important}
  .kc-app>aside header,.kc-app>section header{padding-top:env(safe-area-inset-top,0px)!important;min-height:calc(48px + env(safe-area-inset-top,0px))!important}
  .kc-app>section>button.absolute{top:calc(10px + env(safe-area-inset-top,0px))!important;left:10px!important;width:38px!important;height:38px!important;border-radius:14px!important;background:rgba(0,0,0,.48)!important;backdrop-filter:blur(10px);z-index:60!important}
  .kc-app img,.kc-app video{max-width:100%!important}
  .kc-app [class*="w-[240px]"]{max-width:100%!important}
  .kc-app input,.kc-app textarea,.kc-app select{max-width:100%!important}
  .kc-app [class*="grid-cols-"]{min-width:0}
  #kc-admin-panel{inset:0 0 calc(68px + env(safe-area-inset-bottom,0px)) 0!important}
}

@media (max-width:420px){
  .kc-app>nav{gap:6px!important;padding-left:9px!important;padding-right:9px!important}
  .kc-app>nav .rail-btn{transform:scale(.92);transform-origin:center}
}
