/* v1.9.0 device layout: desktop stays split; tablets/phones get touch-first flow. */
@media (min-width:641px) and (max-width:1180px){
  .panel-l{width:clamp(320px,38vw,430px)!important;}
  .panel-r{display:block!important;min-width:0!important;}
  .prompt-body{max-height:min(52vh,440px)!important;}
  .upzone{min-height:clamp(240px,34vh,420px)!important;}
  #libGrid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))!important;}
  #tab-guide>div{max-width:min(760px,100%)!important;}
}

@media (max-width:920px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important;}
  body{min-height:100dvh!important;}
  #app,#mainView{min-height:100dvh!important;height:auto!important;overflow:visible!important;}
  .main-body{height:auto!important;min-height:auto!important;overflow:visible!important;}
  #tab-gen.on{display:flex!important;flex-direction:column!important;height:auto!important;min-height:auto!important;overflow:visible!important;}
  .panel-l,.panel-r{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;flex:0 0 auto!important;overflow:visible!important;border-left:0!important;border-right:0!important;}
  .panel-l.pl,.panel-r.pr{padding:12px!important;}
  .panel-resizer{display:none!important;}
  .main-tabs{overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
  .main-tabs .tab{scroll-snap-align:start;white-space:nowrap;}
  .tabpanel{height:auto!important;min-height:auto!important;overflow:visible!important;}
  #tab-library,#tab-hist,#tab-ai,#tab-upscale,#tab-watermark,#tab-guide{overflow:visible!important;}
  #libCardArea{overflow:visible!important;}
  #libCategoryBar{overflow-x:auto!important;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch;}
  #libCategoryBar::-webkit-scrollbar,.main-tabs::-webkit-scrollbar{display:none;}
  .prompt-section{max-width:100%!important;margin:12px 0 16px!important;scroll-margin-top:14px;}
  .prompt-hdr{flex-wrap:wrap!important;gap:8px!important;align-items:center!important;}
  .prompt-body{min-height:190px!important;max-height:min(58vh,520px)!important;overflow-y:auto!important;font-size:12px!important;line-height:1.75!important;}
  .upzone{min-height:240px!important;}
  .lib-cards-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #libGrid{grid-template-columns:repeat(auto-fill,minmax(138px,1fr))!important;gap:10px!important;}
}

@media (max-width:640px){
  .hdr{padding:8px 10px!important;gap:8px!important;align-items:flex-start!important;flex-wrap:wrap!important;}
  .brand{font-size:13px!important;line-height:1.15!important;display:block!important;letter-spacing:.08em!important;}
  .brand-ver{font-size:7px!important;margin-left:0!important;margin-top:4px!important;display:inline-flex!important;}
  .brand-sub{font-size:7px!important;line-height:1.35!important;max-width:100%!important;}
  .hdr-right{width:100%!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:wrap!important;}
  .theme-summary{width:40px!important;min-width:40px!important;height:40px!important;padding:0!important;}
  .theme-menu{position:fixed!important;top:calc(env(safe-area-inset-top,0px) + 64px)!important;right:10px!important;left:auto!important;width:min(252px,calc(100vw - 20px))!important;}
  .theme-pill{width:100%!important;height:auto!important;min-height:44px!important;}
  .main-tabs{min-height:42px!important;height:auto!important;padding:4px 6px!important;gap:4px!important;}
  .main-tabs .tab{height:38px!important;padding:0 12px!important;font-size:8px!important;min-width:max-content!important;}
  .panel-l.pl,.panel-r.pr{padding:10px!important;}
  .fld,.km-coll-wrap,.ai-platform-card,.prompt-section,.upzone,.lib-card{border-radius:14px!important;}
  input,select,textarea{font-size:16px!important;min-height:42px!important;}
  textarea{line-height:1.55!important;}
  button,.btn,.btn-sm{min-height:40px!important;}
  .prompt-hdr>div:last-child{margin-left:0!important;width:100%!important;display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:6px!important;}
  .prompt-hdr>div:last-child .btn{width:100%!important;padding-left:8px!important;padding-right:8px!important;}
  .prompt-body{min-height:230px!important;max-height:62vh!important;padding:14px!important;font-size:12px!important;}
  .upzone{min-height:210px!important;}
  #upZone:not(.has-img):not(.rendered){min-height:190px!important;height:190px!important;max-height:190px!important}
  .up-lbl{font-size:8px!important;}
  .chip-row,.presets-row{overflow-x:auto!important;-webkit-overflow-scrolling:touch;}
  .chip-row::-webkit-scrollbar,.presets-row::-webkit-scrollbar{display:none;}
  .panel-l [style*="grid-template-columns:1fr 1fr"],
  .panel-r [style*="grid-template-columns:1fr 1fr"],
  #tab-guide [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important;}
  #tab-guide [style*="grid-template-columns:auto 1fr"]{grid-template-columns:1fr!important;gap:4px!important;}
  #tab-guide>div{padding:14px 10px!important;max-width:100%!important;}
  #libGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  #libCategoryBar{padding:8px 10px!important;}
  .lib-cat-btn{min-width:max-content!important;padding:7px 10px!important;}
}

@media (max-width:420px){
  .brand{font-size:12px!important;}
  .prompt-hdr>div:last-child{grid-template-columns:1fr 1fr!important;}
  .prompt-hdr>div:last-child .btn:first-child{grid-column:1 / -1;}
  .prompt-body{min-height:240px!important;max-height:64vh!important;}
  #libGrid,.lib-cards-row{grid-template-columns:1fr!important;}
  .panel-l.pl,.panel-r.pr{padding:8px!important;}
}


/* v1.9.0 mobile/tablet hardening: allow real page scroll and make dense controls usable on touch devices. */
@media (max-width: 920px){
  html,body{
    height:auto!important;
    min-height:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-text-size-adjust:100%;
    overscroll-behavior-y:contain;
  }
  #app,#mainView,#mainView.active{
    height:auto!important;
    min-height:100svh!important;
    overflow:visible!important;
  }
  #loginView{
    position:absolute!important;
    min-height:100svh!important;
    height:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    justify-content:flex-start!important;
    padding:calc(14px + env(safe-area-inset-top,0px)) 12px calc(22px + env(safe-area-inset-bottom,0px))!important;
  }
  #loginView .login-box{
    width:100%!important;
    max-width:480px!important;
    margin:0 auto!important;
    padding:20px 4px 34px!important;
  }
  #loginView .login-brand{margin-bottom:18px!important;}
  #loginView .login-brand .brand{font-size:clamp(20px,7vw,27px)!important;line-height:1.12!important;}
  #loginView .login-brand p{letter-spacing:.1em!important;}
  #loginView .buy-tab-btn{width:100%!important;min-height:42px!important;}
  #buyPanel2,#buyPanel3,#guideBody{max-width:100%!important;overflow-wrap:anywhere!important;}
  .hdr{
    position:sticky!important;
    top:0!important;
    z-index:900!important;
    width:100%!important;
  }
  .main-tabs{
    position:sticky!important;
    top:0!important;
    z-index:850!important;
    width:100%!important;
    max-width:100vw!important;
  }
  .main-body,#tab-gen.on,.tabpanel.on{
    height:auto!important;
    min-height:auto!important;
    overflow:visible!important;
  }
  .panel-l,.panel-r,.tabpanel .tp-left,.tabpanel .tp-right{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .panel-r.pr{background:linear-gradient(180deg,var(--s1),var(--bg))!important;}
  .panel-resizer{display:none!important;}
  .sec,.km-coll-title,.km-section-hdr-title{overflow-wrap:anywhere!important;}
  .g2,.g3,.form-grid,.grid-2,.grid-3{grid-template-columns:1fr!important;}
  .btn,.btn-sm,.btn-logout,.buy-tab-btn,.lib-cat-btn,.ai-copy-btn,.mood-btn,.ftag,.lib-card-copy{
    min-height:40px!important;
    touch-action:manipulation;
  }
  .ftag,.mood-btn{display:flex!important;align-items:center!important;justify-content:center!important;}
  input,select,textarea{
    max-width:100%!important;
    font-size:16px!important;
  }
  .upzone,#upZone{
    min-height:clamp(210px,42vh,380px)!important;
    max-height:60vh!important;
  }
  #refImg{object-fit:contain!important;}
  #promptSection{
    width:100%!important;
    max-width:100%!important;
    position:relative!important;
    scroll-margin-top:74px!important;
  }
  #promptBody,.prompt-body{
    min-height:220px!important;
    max-height:62vh!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
    white-space:pre-wrap!important;
    overflow-wrap:anywhere!important;
  }
  .hist-item,.result-card,.lib-card{max-width:100%!important;}
  .modal{
    align-items:flex-start!important;
    justify-content:center!important;
    overflow-y:auto!important;
    padding:14px!important;
  }
  .modal-box{
    width:100%!important;
    max-width:calc(100vw - 28px)!important;
    max-height:none!important;
    margin:24px auto!important;
  }
  .toast{
    width:auto!important;
    max-width:calc(100vw - 28px)!important;
    bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;
  }
}

@media (max-width: 640px){
  .panel-l.pl,.panel-r.pr{padding:10px!important;}
  .main-tabs .tab{letter-spacing:.1em!important;}
  #hdrEmail{max-width:100%!important;}
  .prompt-hdr{position:relative!important;}
  .prompt-hdr>div:last-child{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr 1fr!important;
    gap:6px!important;
  }
  .prompt-hdr>div:last-child .btn{min-width:0!important;width:100%!important;}
  #libGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #adminLibPanel [style*="display:grid"]{grid-template-columns:1fr!important;}
}

@media (max-width: 430px){
  .hdr{padding-left:9px!important;padding-right:9px!important;}
  .brand{font-size:11.5px!important;letter-spacing:.055em!important;}
  .brand-sub{display:none!important;}
  .main-tabs{padding-left:5px!important;padding-right:5px!important;}
  .panel-l.pl,.panel-r.pr{padding:8px!important;}
  .prompt-hdr>div:last-child{grid-template-columns:1fr 1fr!important;}
  .prompt-hdr>div:last-child .btn:first-child{grid-column:1 / -1!important;}
  #libGrid,.lib-cards-row{grid-template-columns:1fr!important;}
}


/* Phone UX shell: the create surface comes first; settings are a deliberate view. */
#kmMobileStudioNav,#kmMobileActionDock{display:none;}
@media (max-width:760px){
  body.km-mobile-studio-ready{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))!important;}
  body.km-mobile-studio-ready #tab-gen.on{
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
  }
  #kmMobileStudioNav{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:6px;
    position:sticky;
    top:42px;
    z-index:910;
    padding:8px 10px 7px;
    margin:0;
    background:
      linear-gradient(180deg,rgba(7,7,10,.96),rgba(7,7,10,.82)),
      radial-gradient(circle at 50% 0%,var(--gglow2),transparent 70%);
    border-bottom:1px solid rgba(var(--accent-rgb),.18);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  #kmMobileStudioNav button{
    min-width:0;
    min-height:48px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:14px;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
    color:var(--txt2);
    font-family:var(--mono);
    text-transform:uppercase;
    letter-spacing:.11em;
    font-size:8px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    touch-action:manipulation;
  }
  #kmMobileStudioNav button span{font-size:9px;font-weight:800;color:inherit;}
  #kmMobileStudioNav button small{font-size:6.5px;letter-spacing:.08em;color:var(--mut);text-transform:none;}
  #kmMobileStudioNav button.is-on{
    color:var(--gold);
    border-color:color-mix(in srgb,var(--gold) 54%,transparent);
    background:
      linear-gradient(180deg,color-mix(in srgb,var(--gold) 14%,transparent),rgba(255,255,255,.025));
    box-shadow:0 0 18px var(--gglow),inset 0 1px 0 rgba(255,255,255,.10);
  }
  body.km-mobile-studio-ready .panel-l.pl,
  body.km-mobile-studio-ready .panel-r.pr{
    padding-top:10px!important;
  }
  body.km-mobile-view-create #tab-gen.on>.panel-l,
  body.km-mobile-view-create #tab-gen.on>.panel-resizer,
  body.km-mobile-view-prompt #tab-gen.on>.panel-l,
  body.km-mobile-view-prompt #tab-gen.on>.panel-resizer,
  body.km-mobile-view-settings #tab-gen.on>.panel-r,
  body.km-mobile-view-settings #tab-gen.on>.panel-resizer{
    display:none!important;
  }
  body.km-mobile-view-create #tab-gen.on>.panel-r,
  body.km-mobile-view-prompt #tab-gen.on>.panel-r,
  body.km-mobile-view-settings #tab-gen.on>.panel-l{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
  }
  body.km-mobile-view-prompt #tab-gen.on>.panel-r>.sec:first-child,
  body.km-mobile-view-prompt #upZone,
  body.km-mobile-view-prompt .up-acts,
  body.km-mobile-view-prompt #badges,
  body.km-mobile-view-prompt #scanTypePill,
  body.km-mobile-view-prompt #scanDesc{
    display:none!important;
  }
  body.km-mobile-view-prompt #promptSection{
    margin-top:2px!important;
  }
  body.km-mobile-view-create #promptSection{
    margin-top:14px!important;
  }
  #kmMobileActionDock{
    display:grid;
    grid-template-columns:72px 1fr 72px;
    gap:8px;
    position:fixed;
    left:10px;
    right:10px;
    bottom:calc(10px + env(safe-area-inset-bottom,0px));
    z-index:1200;
    padding:8px;
    border:1px solid color-mix(in srgb,var(--gold) 32%,transparent);
    border-radius:18px;
    background:
      linear-gradient(180deg,rgba(18,18,24,.94),rgba(6,6,10,.96)),
      radial-gradient(circle at 50% 0%,var(--gglow2),transparent 62%);
    box-shadow:0 18px 45px rgba(0,0,0,.45),0 0 22px var(--gglow);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
  }
  #kmMobileActionDock button{
    min-height:48px!important;
    border-radius:13px!important;
    font-family:var(--mono)!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
    font-size:8px!important;
    touch-action:manipulation;
  }
  #kmMobileActionDock .km-mobile-generate{
    color:#080809!important;
    border:0!important;
    background:linear-gradient(135deg,var(--gold),var(--glo))!important;
    box-shadow:0 0 20px var(--gglow2),inset 0 1px 0 rgba(255,255,255,.25)!important;
    font-weight:900!important;
  }
  #kmMobileActionDock .km-mobile-mini{
    color:var(--txt2)!important;
    border:1px solid rgba(255,255,255,.1)!important;
    background:rgba(255,255,255,.035)!important;
  }
  #kmMobileActionDock .km-mobile-mini.is-on{
    color:var(--gold)!important;
    border-color:color-mix(in srgb,var(--gold) 45%,transparent)!important;
    background:color-mix(in srgb,var(--gold) 10%,transparent)!important;
  }
  body:not(.km-mobile-studio-ready) #kmMobileStudioNav,
  body:not(.km-mobile-studio-ready) #kmMobileActionDock{display:none!important;}
}


/* KM cleanup: hide theme shortcut letters, protect prompt placeholders, tighten prompt empty state */
.theme-menu .theme-pill{grid-template-columns:20px 1fr!important;position:relative!important;}
.theme-menu .theme-pill::before,.theme-menu .theme-pill::after,.theme-menu .theme-option-swatch::before,.theme-menu .theme-option-swatch::after{display:none!important;content:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;}
.theme-menu .theme-pill > :not(.theme-option-swatch):not(span){display:none!important;}
.prompt-empty{display:none!important;}
#promptBody{position:relative;white-space:pre-wrap;outline:none;}
#promptBody.km-prompt-empty{display:flex!important;align-items:center!important;justify-content:center!important;min-height:112px!important;height:112px!important;}
#promptBody.km-prompt-empty::before{content:attr(data-placeholder);pointer-events:none;user-select:none;text-align:center;max-width:72%;opacity:.43;color:var(--txt2);font-style:italic;line-height:1.6;}
#promptBody.km-prompt-empty:focus::before{content:"";}
#gpsToggle:disabled{opacity:.45!important;cursor:not-allowed!important;}

/* KM final visual cleanup: no theme hotkeys, compact empty prompt */
.theme-menu .theme-pill,.theme-menu .theme-pill *{text-transform:none!important;}
.theme-menu .theme-pill{font-size:0!important;line-height:0!important;overflow:hidden!important;}
.theme-menu .theme-pill > span{font-size:11px!important;line-height:1.25!important;}
.theme-menu .theme-pill > .theme-option-swatch{font-size:0!important;line-height:0!important;}
.theme-menu .theme-pill::first-letter,.theme-menu .theme-pill span::first-letter{font-size:inherit!important;}
#promptBody:has(.prompt-empty){min-height:112px!important;height:112px!important;}
#promptBody:has(.prompt-empty) .prompt-empty{height:100%!important;padding:0 20px!important;}

/* 2026-08 responsive workspace refinement
   Professional split view for tablets/reduced windows; deliberate single-pane
   navigation on phones. These rules intentionally live in the responsive
   source so there is one final breakpoint authority. */
*,*::before,*::after{box-sizing:border-box;}
img,canvas,video,svg{max-width:100%;}
button,.btn,.tab,summary,[role="button"]{-webkit-tap-highlight-color:transparent;}
button:focus-visible,.btn:focus-visible,.tab:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--accent,var(--gold));
  outline-offset:2px;
}
.km-skip-link{
  position:fixed;
  top:10px;
  left:10px;
  z-index:3000;
  transform:translateY(-150%);
  padding:10px 14px;
  border:1px solid var(--gold);
  border-radius:8px;
  background:var(--bg);
  color:var(--gold);
  font:700 12px/1.2 var(--mono);
}
.km-skip-link:focus{transform:none;}

/* The long label must remain centered and fully readable at every width. */
#wmBatchBtn{
  width:100%!important;
  min-height:46px!important;
  height:auto!important;
  padding:10px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.3!important;
  white-space:normal!important;
  overflow:visible!important;
}

/* Tablet and reduced desktop: retain the productive two-pane workspace. */
@media (min-width:761px) and (max-width:1100px){
  html,body,#app{height:100%;min-height:100%;overflow:hidden!important;}
  #mainView,#mainView.active{height:100%;min-height:0!important;overflow:hidden!important;}
  .hdr{min-height:54px!important;padding:8px 10px!important;gap:8px!important;}
  .brand{font-size:clamp(12px,1.65vw,15px)!important;letter-spacing:.1em!important;}
  .brand-sub{font-size:7px!important;letter-spacing:.13em!important;}
  .hdr-right{gap:5px!important;min-width:0!important;}
  #hdrEmail{max-width:94px!important;}
  .km-ai-wallet-summary{min-width:112px!important;padding-inline:8px!important;}
  .km-ai-buy-btn{padding-inline:8px!important;}
  .main-tabs{min-height:44px!important;padding-inline:6px!important;overflow-x:auto!important;}
  .main-tabs .tab{min-height:44px!important;padding-inline:10px!important;font-size:9px!important;}
  .main-body{height:auto!important;min-height:0!important;overflow:hidden!important;}
  #tab-gen.on{display:flex!important;flex-direction:row!important;height:100%!important;min-height:0!important;overflow:hidden!important;}
  .panel-l,.panel-r{display:block!important;height:100%!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;}
  .panel-l{width:clamp(305px,37vw,390px)!important;max-width:390px!important;flex:0 0 clamp(305px,37vw,390px)!important;}
  .panel-r{width:auto!important;min-width:0!important;flex:1 1 auto!important;}
  .panel-resizer{display:block!important;}
  .tabpanel.on{display:flex!important;flex-direction:row!important;height:100%!important;min-height:0!important;overflow:hidden!important;}
  .tabpanel .tp-left,.tabpanel .tp-right{display:block!important;height:100%!important;max-height:none!important;overflow-y:auto!important;}
  .tabpanel .tp-left{width:clamp(305px,35vw,380px)!important;flex:0 0 clamp(305px,35vw,380px)!important;}
  .tabpanel .tp-right{width:auto!important;min-width:0!important;flex:1 1 auto!important;}
  .panel-r .g2,.panel-r .grid-2,.tabpanel .tp-right .g2,.tabpanel .tp-right .grid-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #tab-watermark .tp-right{padding:14px!important;}
  #wmTabPreviewWrap{min-height:clamp(300px,52vh,620px)!important;}
}

@media (max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important;}
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;}
  .hdr{
    position:relative!important;
    top:auto!important;
    min-height:0!important;
    padding:10px max(10px,env(safe-area-inset-right,0px)) 9px max(10px,env(safe-area-inset-left,0px))!important;
    gap:9px!important;
    align-items:flex-start!important;
  }
  .brand-wrap{min-width:0!important;flex-wrap:wrap!important;row-gap:2px!important;}
  .brand{font-size:clamp(12px,4vw,15px)!important;letter-spacing:.08em!important;overflow-wrap:anywhere!important;}
  .brand-ver{display:none!important;}
  .brand-sub{display:block!important;max-width:100%!important;font-size:6.5px!important;letter-spacing:.11em!important;line-height:1.4!important;}
  .hdr-right{width:100%!important;display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;}
  #hdrEmail{order:0;flex:1 1 100%;max-width:100%!important;font-size:8px!important;}
  .km-ai-header-wallet{order:1;width:100%!important;display:grid!important;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)!important;gap:7px!important;}
  .km-ai-wallet-menu,.km-ai-wallet-summary,.km-ai-buy-btn{min-width:0!important;width:100%!important;}
  .km-ai-wallet-summary,.km-ai-header-icon,.km-ai-buy-btn{height:44px!important;min-height:44px!important;}
  .km-ai-wallet-summary,.km-ai-buy-btn{padding-inline:9px!important;font-size:9px!important;}
  .km-ai-wallet-popover{position:fixed!important;top:calc(10px + env(safe-area-inset-top,0px))!important;left:10px!important;right:10px!important;width:auto!important;max-height:calc(100dvh - 20px)!important;overflow-y:auto!important;z-index:1800!important;}
  .theme-switcher{order:2!important;}
  #adminKeyBtn{order:3!important;}
  .hdr-right>.btn-logout:last-child{order:4!important;min-height:44px!important;flex:1 1 auto!important;}
  .theme-summary,#adminKeyBtn{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;}
  .main-tabs{position:sticky!important;top:0!important;z-index:950!important;min-height:50px!important;height:50px!important;padding:4px 6px!important;gap:4px!important;scroll-padding-inline:6px!important;background:color-mix(in srgb,var(--surface-1,#09090d) 94%,transparent)!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;}
  .main-tabs .tab{height:42px!important;min-height:42px!important;padding:0 12px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;border-radius:9px 9px 0 0!important;}
  #kmMobileStudioNav{top:50px!important;padding-inline:max(8px,env(safe-area-inset-left,0px)) max(8px,env(safe-area-inset-right,0px))!important;}
  #kmMobileStudioNav button{min-height:50px!important;}
  .panel-l.pl,.panel-r.pr,.tabpanel .tp-left,.tabpanel .tp-right{padding:12px!important;}
  .fld,.km-coll-wrap,.ai-platform-card,.prompt-section,.upzone,.lib-card,.modal-box{border-radius:12px!important;}
  input,select,textarea,body .btn,body button{min-height:44px!important;}
  .g2,.g3,.form-grid,.grid-2,.grid-3{grid-template-columns:1fr!important;gap:9px!important;}
  .prompt-hdr{padding:10px!important;gap:8px!important;}
  .prompt-hdr-acts,.prompt-hdr>div:last-child{width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;}
  .prompt-hdr-acts .btn,.prompt-hdr>div:last-child .btn{min-width:0!important;width:100%!important;padding-inline:7px!important;font-size:9px!important;}
  .prompt-section.km-optimizer-previewing .prompt-hdr-acts{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #promptBody,.prompt-body{font-size:12px!important;line-height:1.68!important;padding:14px!important;}
  #tab-watermark.on{display:flex!important;flex-direction:column!important;}
  #tab-watermark .tp-left,#tab-watermark .tp-right{width:100%!important;max-width:none!important;flex:0 0 auto!important;}
  #tab-watermark .tp-right{min-height:70dvh!important;border-left:0!important;border-top:1px solid var(--border-subtle,var(--brd))!important;}
  #wmTabPreviewWrap{min-height:clamp(280px,58dvh,560px)!important;}
  #wmBatchBtn{min-height:50px!important;font-size:11px!important;letter-spacing:.1em!important;}
  .modal{padding:max(10px,env(safe-area-inset-top,0px)) 10px calc(10px + env(safe-area-inset-bottom,0px))!important;}
  .modal-box{margin:0 auto!important;max-width:100%!important;}
  .modal-box.km-token-store-box{max-height:calc(100dvh - 20px)!important;border-radius:14px!important;}
  .km-token-package-grid{grid-template-columns:1fr!important;padding:0 15px!important;gap:9px!important;}
  .km-token-package{min-height:128px!important;padding:14px!important;}
  .km-token-store-status{margin:0 15px 12px!important;}
  .km-token-checkout-scope{margin:0 15px 12px!important;grid-template-columns:1fr!important;gap:6px!important;}
  .km-token-purchase-steps{grid-template-columns:1fr!important;margin:0 15px 12px!important;padding:8px!important;gap:4px!important;}
  .km-token-purchase-step{grid-template-columns:24px minmax(0,1fr)!important;padding:6px!important;}
  .km-token-redeem-shortcut-copy{margin:0 15px 15px!important;}
  .km-token-messenger{width:calc(100% - 30px)!important;margin:12px 15px 0!important;grid-template-columns:38px minmax(0,1fr) 24px!important;}
  .km-token-store-note{margin:12px 15px 0!important;align-items:flex-start!important;}
  .toast{left:14px!important;right:14px!important;transform:none!important;width:auto!important;max-width:none!important;text-align:center!important;}
  body.km-mobile-view-create #tab-gen.on>.panel-r,
  body.km-mobile-view-settings #tab-gen.on>.panel-l,
  body.km-mobile-view-prompt #tab-gen.on>.panel-r{animation:km-mobile-pane-in .2s ease-out both;}
}

@media (max-width:430px){
  .brand-sub{display:none!important;}
  .km-ai-header-wallet{grid-template-columns:minmax(0,1fr) 44px!important;}
  .km-ai-buy-btn{grid-column:1/-1!important;}
  .prompt-hdr-acts,.prompt-hdr>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .prompt-hdr-acts .btn:first-child,.prompt-hdr>div:last-child .btn:first-child{grid-column:1/-1!important;}
  #kmMobileActionDock{left:7px!important;right:7px!important;bottom:calc(7px + env(safe-area-inset-bottom,0px))!important;grid-template-columns:66px 1fr 66px!important;gap:6px!important;padding:6px!important;}
}

@keyframes km-mobile-pane-in{
  from{opacity:0;transform:translateY(8px);}
  to{opacity:1;transform:none;}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}
}
