/*
 * KEY App — Visual Refresh v33
 * Goals: premium, calm, product-led UI; less decorative noise; clearer hierarchy.
 * Cosmetic only: no data/API/business rules are changed here.
 */

:root{
  --kv-page:#f5f9f7;
  --kv-surface:var(--ui-surface,#fff);
  --kv-surface-2:var(--ui-surface-2,#f6faf8);
  --kv-text:var(--ui-text,var(--text,#10231f));
  --kv-muted:var(--ui-muted,var(--muted,#60736e));
  --kv-line:var(--ui-border,rgba(16,35,31,.08));
  --kv-brand:var(--ui-brand,#087f68);
  --kv-brand-soft:var(--ui-brand-soft,rgba(8,127,104,.10));
  --kv-radius:18px;
  --kv-radius-lg:22px;
  --kv-radius-xl:28px;
  --kv-shadow:0 8px 24px rgba(16,35,31,.055);
  --kv-shadow-lg:0 16px 42px rgba(16,35,31,.085);
}
[data-theme="dark"]{
  --kv-page:#0a1210;
  --kv-shadow:0 10px 30px rgba(0,0,0,.18);
  --kv-shadow-lg:0 18px 50px rgba(0,0,0,.28);
}

/* ---------- Foundation ---------- */
html,body{background:var(--kv-page)!important;color:var(--kv-text)!important;}
body::before{display:none!important;}
.app{background:transparent!important;}
button,input,textarea,select{font-family:inherit;}
button{-webkit-tap-highlight-color:transparent;}

/* Reduce visual competition from old decorative layers without removing KEY colors. */
.mag-hero::before{animation:none!important;opacity:.35!important;}
.mag-hero::after{opacity:.55!important;}

/* ---------- App shell / header ---------- */
#mainApp{max-width:960px!important;}
#homeContent{padding:0!important;}
.status-bar{
  background:color-mix(in srgb,var(--kv-surface) 92%,transparent)!important;
  border:1px solid var(--kv-line)!important;
  box-shadow:0 5px 22px rgba(16,35,31,.055)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
.status-bar .key-badge{
  box-shadow:none!important;
  border-radius:12px!important;
}
.status-bar .coin-badge{border-radius:999px!important;}
.status-bar-btn{border-radius:12px!important;}

/* ---------- Home / dashboard ---------- */
.logo-area{
  padding:18px 4px 14px!important;
  margin-bottom:16px!important;
  border-bottom:1px solid var(--kv-line)!important;
}
.logo-area .logo{
  font-size:30px!important;
  letter-spacing:2.5px!important;
}
.logo-area #welcomeText{
  color:var(--kv-muted)!important;
  font-weight:650!important;
}

.main-actions{gap:14px!important;}
.main-actions > *{animation:kvEnter .35s ease both;}
.main-actions > *:nth-child(2){animation-delay:.03s;}
.main-actions > *:nth-child(3){animation-delay:.06s;}
.main-actions > *:nth-child(4){animation-delay:.09s;}
.main-actions > *:nth-child(5){animation-delay:.12s;}
.main-actions > *:nth-child(6){animation-delay:.15s;}
@keyframes kvEnter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}

.mag-hero{
  min-height:0!important;
  padding:24px 24px 22px!important;
  border-radius:var(--kv-radius-xl)!important;
  box-shadow:0 18px 46px rgba(8,127,104,.15)!important;
}
.mag-hero-badge{
  margin-bottom:10px!important;
  padding:5px 10px!important;
  border-radius:999px!important;
  letter-spacing:.2px!important;
}
.mag-hero-name{
  font-size:clamp(23px,4.4vw,30px)!important;
  letter-spacing:-.6px!important;
  text-shadow:none!important;
}
.mag-hero-sub{max-width:620px;opacity:.9!important;}

/* Make the four primary services the visual center. */
.mag-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:16px!important;
}
.mag-tile{
  min-height:112px;
  padding:17px 16px!important;
  justify-content:center!important;
  gap:7px!important;
  border-radius:18px!important;
  background:var(--kv-surface)!important;
  border:1px solid var(--kv-line)!important;
  box-shadow:var(--kv-shadow)!important;
}
.mag-tile:hover{transform:translateY(-2px)!important;box-shadow:var(--kv-shadow-lg)!important;}
.mag-tile:active{transform:translateY(0) scale(.99)!important;}
.mag-tile-title{font-size:14px!important;font-weight:800!important;}
.mag-tile-sub{font-size:11.5px!important;color:var(--kv-muted)!important;}
.mag-tile-primary{background:linear-gradient(160deg,rgba(8,127,104,.11),var(--kv-surface))!important;}
.mag-tile-blue{background:linear-gradient(160deg,rgba(8,145,178,.09),var(--kv-surface))!important;}
.mag-tile-green{background:linear-gradient(160deg,rgba(8,127,104,.08),var(--kv-surface))!important;}
.mag-tile-gold{background:linear-gradient(160deg,rgba(217,119,6,.08),var(--kv-surface))!important;}

.mag-section-title{
  margin:22px 2px 10px!important;
  padding:0!important;
  border:0!important;
}
.mag-section-title::before{width:3px!important;height:16px!important;box-shadow:none!important;}
.mag-section-title::after{background:var(--kv-line)!important;}
.mag-section-title span{font-size:12px!important;color:var(--kv-muted)!important;font-weight:800!important;}

/* Home statistic strip: quieter, clearer. */
.main-actions > div[style*="Users count"],
.main-actions > div[style*="Users count"]{
  padding:10px 14px!important;
  border-radius:16px!important;
  box-shadow:none!important;
}

/* Profile / admin links: turn long lists into clean navigation rows. */
.mag-links{
  margin-bottom:10px!important;
  border:1px solid var(--kv-line)!important;
  border-radius:18px!important;
  background:var(--kv-surface)!important;
  box-shadow:var(--kv-shadow)!important;
}
.mag-link{
  min-height:52px!important;
  padding:10px 14px!important;
  font-size:13px!important;
  border-bottom:1px solid var(--kv-line)!important;
}
.mag-link:hover{background:var(--kv-surface-2)!important;}
.mag-link-arrow{opacity:.28!important;font-size:19px!important;}

/* ---------- Search / expert discovery ---------- */
.kx-searchbar{
  box-shadow:none!important;
  border-radius:16px!important;
  min-height:54px!important;
}
.kx-chips{padding-bottom:4px!important;}
.kx-chip{height:34px!important;padding-inline:13px!important;}
.kx-resbar{margin:8px 0 12px!important;}
.kx-card{
  padding:15px!important;
  border-radius:18px!important;
  box-shadow:var(--kv-shadow)!important;
}
.kx-card:hover{box-shadow:var(--kv-shadow-lg)!important;}
.kx-avatar{
  width:52px!important;height:52px!important;border-radius:16px!important;
}
.kx-name{font-size:14.5px!important;}
.kx-spec{font-size:12.5px!important;}
.kx-meta{gap:5px!important;}
.kx-pill{padding:3px 8px!important;}
.kx-card-actions{gap:7px!important;}
.kx-card-actions button{min-height:42px!important;border-radius:12px!important;}
.kx-rate{padding:4px 8px!important;font-size:12px!important;}

/* ---------- Expert public profile ---------- */
.expert-hero-pro{
  margin-bottom:12px!important;
  border-radius:24px!important;
  box-shadow:0 18px 46px rgba(5,40,30,.15)!important;
}
.expert-hero-inner{padding:22px 18px 18px!important;}
.expert-hero-avatar{
  width:78px!important;height:78px!important;
  box-shadow:0 0 0 4px rgba(255,255,255,.10),0 8px 22px rgba(16,185,129,.22)!important;
}
.expert-hero-name{font-size:20px!important;}
.expert-tabs{
  border-radius:16px!important;
  padding:3px!important;
  box-shadow:var(--kv-shadow)!important;
}
.expert-tab{min-height:42px!important;}
.review-card{border-radius:16px!important;box-shadow:none!important;padding:13px 14px!important;}

/* Rating block: make the score feel authoritative rather than decorative. */
.kx-rating-card{
  padding:16px!important;
  border-radius:20px!important;
  box-shadow:var(--kv-shadow)!important;
}
.kx-score b{font-size:38px!important;}
.kx-bars{gap:5px!important;}
.kx-bar span.t{height:6px!important;}
.kx-cta{
  border-radius:18px!important;
  box-shadow:0 12px 34px rgba(16,35,31,.12)!important;
}

/* ---------- Request flow ---------- */
.kx-progress{margin:8px 0 18px!important;}
.kx-pstep{font-size:10.5px!important;}
.kx-pstep em{width:30px!important;height:30px!important;}
.kx-step-head h4{font-size:18px!important;}
.kx-tips,.kx-drop,.kx-opt,.kx-review{border-radius:16px!important;}
.kx-wiz-foot{margin-top:16px!important;}
.kx-wiz-foot button{min-height:48px!important;border-radius:14px!important;}

/* ---------- Chat ---------- */
.kx-chat,.chat-box{
  border-radius:22px!important;
  box-shadow:var(--kv-shadow-lg)!important;
}
.kx-chat .kx-chat-head,.chat-head{min-height:62px!important;}
.chat-msgs,.chat-msgs-pro{background:var(--kv-surface-2)!important;}
.bubble-pro,.bubble{box-shadow:none!important;}
.bubble-pro{max-width:82%!important;border-radius:16px!important;}
.typing-indicator{box-shadow:none!important;}

/* ---------- Wallet ---------- */
.wallet-card{
  padding:22px!important;
  border-radius:24px!important;
  box-shadow:0 18px 46px rgba(8,127,104,.16)!important;
}
.wallet-card .wallet-balance{font-size:32px!important;}
.wallet-card .wallet-balance small{margin-top:6px!important;}
.tx-card,.tx-item{
  border-radius:14px!important;
}
.tx-list{gap:7px!important;}
.kx-panel{box-shadow:var(--kv-shadow)!important;border-radius:20px!important;}

/* ---------- Forms / authentication ---------- */
.auth-screen{max-width:520px!important;padding:28px 18px 62px!important;}
.auth-screen .intro-card{
  border-radius:20px!important;
  padding:16px!important;
  box-shadow:var(--kv-shadow)!important;
}
.auth-form h3{font-size:24px!important;margin:22px 0 16px!important;}
.auth-form .field{margin-bottom:13px!important;}
.field label,.field-label{font-size:12px!important;font-weight:750!important;}
.field input,.field textarea,.field select{
  min-height:48px!important;
  border-radius:14px!important;
}
.primary-btn,.secondary-btn,.action-btn{
  border-radius:13px!important;
}
.primary-btn{box-shadow:0 8px 20px rgba(8,127,104,.13)!important;}
.primary-btn:active,.secondary-btn:active,.action-btn:active{transform:translateY(1px) scale(.99)!important;}
.role-card{border-radius:16px!important;box-shadow:none!important;}

/* ---------- Bottom navigation ---------- */
.bottom-nav{
  max-width:960px!important;
  bottom:10px!important;
  width:min(calc(100% - 20px),960px)!important;
  padding:5px!important;
  border-radius:20px!important;
  background:color-mix(in srgb,var(--kv-surface) 91%,transparent)!important;
  box-shadow:0 14px 38px rgba(16,35,31,.12)!important;
  backdrop-filter:blur(20px)!important;
  -webkit-backdrop-filter:blur(20px)!important;
}
.bnav-item{
  min-height:52px!important;
  border-radius:15px!important;
  gap:3px!important;
}
.bnav-icon{font-size:19px!important;}
.bnav-item.active{
  background:var(--kv-brand-soft)!important;
  color:var(--kv-brand)!important;
}
.bnav-item.active .bnav-icon{padding:3px 13px!important;filter:none!important;}
.bnav-label{font-size:9.5px!important;font-weight:700!important;}

/* ---------- Landing: premium but calm ---------- */
.public-landing{
  background:var(--kv-page)!important;
}
.landing-nav{
  max-width:1160px!important;
  padding:18px 22px!important;
}
.landing-brand{font-weight:900!important;letter-spacing:1px!important;}
.landing-brand-mark{
  box-shadow:none!important;
  border-radius:12px!important;
}
.landing-hero{
  max-width:1160px!important;
  padding:54px 22px 38px!important;
  gap:28px!important;
}
.landing-hero-copy{max-width:650px!important;}
.landing-eyebrow{font-size:12px!important;letter-spacing:.02em!important;}
.landing-hero h1{
  font-size:clamp(38px,6vw,64px)!important;
  line-height:1.15!important;
  letter-spacing:-1.7px!important;
}
.landing-hero-copy>p{
  max-width:610px!important;
  font-size:15px!important;
  line-height:1.9!important;
}
.landing-search{
  height:62px!important;
  padding:7px!important;
  border-radius:18px!important;
  box-shadow:0 12px 34px rgba(16,35,31,.08)!important;
}
.landing-search input{font-size:14px!important;}
.landing-search button{
  height:48px!important;
  border-radius:13px!important;
  min-width:92px!important;
}
.landing-quick-links{gap:16px!important;}
.landing-quick-links button{font-size:12.5px!important;}

.landing-hero-visual{transform:scale(.94);}
.landing-orb{filter:blur(2px)!important;opacity:.4!important;}
.landing-glass-card{
  box-shadow:0 20px 42px rgba(16,35,31,.10)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
.landing-card-main{border-radius:22px!important;}
.landing-card-float{border-radius:16px!important;}

.landing-trust-row{
  max-width:1160px!important;
  padding:8px 22px 28px!important;
}
.landing-trust-row>div{border-radius:16px!important;box-shadow:none!important;}
.landing-section,.landing-how{
  max-width:1160px!important;
  padding:26px 22px!important;
}
.landing-section-heading h2{font-size:26px!important;letter-spacing:-.7px!important;}
.landing-category-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.landing-category-grid button{
  min-height:138px!important;
  padding:16px!important;
  border-radius:18px!important;
  box-shadow:var(--kv-shadow)!important;
}
.landing-category-grid button>span:first-child{font-size:24px!important;filter:none!important;}
.landing-steps{gap:10px!important;}
.landing-steps article{
  border-radius:18px!important;
  box-shadow:var(--kv-shadow)!important;
  padding:20px 16px!important;
}
.landing-final-cta{
  max-width:1116px!important;
  margin:20px auto 30px!important;
  padding:26px!important;
  border-radius:22px!important;
  box-shadow:var(--kv-shadow-lg)!important;
}
.landing-footer{max-width:1160px!important;padding:16px 22px 28px!important;}

/* ---------- Dialogs / empty states ---------- */
.empty-state-pro,.kx-empty,.empty-state,.no-results,.error-box{
  border-radius:18px!important;
  box-shadow:none!important;
}
#successOverlay{background:rgba(5,40,30,.32)!important;}
.success-card{border-radius:22px!important;box-shadow:0 18px 48px rgba(0,0,0,.20)!important;}

/* ---------- Responsive ---------- */
@media (min-width:801px){
  .main-actions > .mag-hero{grid-column:span 8!important;}
  .main-actions > .home-slider{grid-column:span 4!important;}
}
@media (max-width:800px){
  #mainApp{max-width:560px!important;}
  .mag-hero{padding:22px 19px!important;}
  .landing-hero{padding-top:34px!important;}
  .landing-hero-visual{transform:none;max-width:520px;width:100%;margin:0 auto;}
  .landing-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .bottom-nav{width:calc(100% - 16px)!important;bottom:8px!important;}
}
@media (max-width:560px){
  .main-actions{gap:11px!important;}
  .mag-grid{gap:9px!important;}
  .mag-tile{min-height:104px!important;padding:15px 13px!important;}
  .mag-tile-title{font-size:13.2px!important;}
  .mag-tile-sub{font-size:11px!important;}
  .wallet-card{padding:20px!important;}
  .wallet-card .wallet-balance{font-size:28px!important;}
  .kx-rating-card{grid-template-columns:1fr!important;}
  .landing-nav{padding:14px 14px!important;}
  .landing-nav-actions .landing-login-btn,.landing-nav-actions .landing-signup-btn{padding-inline:11px!important;}
  .landing-hero{padding:28px 14px 24px!important;}
  .landing-hero h1{font-size:38px!important;letter-spacing:-1.1px!important;}
  .landing-hero-copy>p{font-size:14px!important;}
  .landing-search{height:58px!important;}
  .landing-category-grid{gap:9px!important;}
  .landing-category-grid button{min-height:124px!important;}
  .landing-trust-row,.landing-section,.landing-how{padding-inline:14px!important;}
  .landing-section-heading h2{font-size:22px!important;}
  .landing-steps{grid-template-columns:1fr!important;}
  .landing-final-cta{margin-inline:14px!important;padding:22px!important;}
}
@media (prefers-reduced-motion:reduce){
  .main-actions > *, .landing-orb{animation:none!important;transition:none!important;}
}


/* ---------- v34 functional discovery + expert identity ---------- */
.kv-edge-glow{
  position:relative;
  border-color:rgba(8,127,104,.12)!important;
  box-shadow:0 0 0 1px rgba(8,127,104,.045),0 8px 24px rgba(16,35,31,.045)!important;
}
.mag-tile,.kx-card,.expert-card,.profile-card,.form-section,.request-card,.wallet-card,.landing-glass-card{border-color:rgba(8,127,104,.10)!important;}
.mag-tile:hover,.kx-card:hover,.expert-card:hover{border-color:rgba(8,127,104,.22)!important;box-shadow:0 0 0 1px rgba(8,127,104,.065),0 12px 30px rgba(8,127,104,.085)!important;}
.kx-searchbar:focus-within,.landing-search:focus-within,.field input:focus,.field textarea:focus,.field select:focus,#exSearch:focus,#exCity:focus,#exMinRate:focus,#exMaxFee:focus{outline:none!important;border-color:rgba(8,127,104,.34)!important;box-shadow:0 0 0 3px rgba(8,127,104,.075),0 0 22px rgba(8,127,104,.09)!important;}
.expert-card .request-header{display:flex;align-items:center;gap:10px;}
.expert-card .request-header strong{min-width:0;flex:1;}
.kv-expert-avatar{flex:0 0 auto;width:50px;height:50px;border-radius:16px;padding:2px;display:grid;place-items:center;position:relative;background:linear-gradient(135deg,rgba(8,127,104,.95),rgba(37,99,235,.65));box-shadow:0 0 0 2px rgba(255,255,255,.95),0 0 0 4px rgba(8,127,104,.13),0 8px 22px rgba(8,127,104,.13);}
.kv-expert-avatar img{width:100%;height:100%;object-fit:cover;border-radius:13px;background:#eef7f3;display:block;}
.kv-expert-avatar .kv-avatar-fallback{font-size:15px;font-weight:900;color:var(--kv-brand);width:100%;height:100%;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#f4fbf8,#e9f6f1);}
.kv-expert-avatar .kv-online-dot{position:absolute;right:-2px;bottom:-2px;width:12px;height:12px;border-radius:50%;background:#10b981;border:2px solid #fff;}
.expert-hero-avatar{position:relative;overflow:visible!important;}
.expert-hero-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit;}
.expert-hero-avatar:has(img){background:transparent!important;}
.expert-hero-avatar:has(img)::after{content:"";position:absolute;inset:-4px;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 2px rgba(8,127,104,.24),0 0 22px rgba(8,127,104,.16);}
.kv-avatar-editor{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:15px;border:1px solid rgba(8,127,104,.12);border-radius:20px;background:linear-gradient(145deg,rgba(8,127,104,.055),var(--kv-surface));box-shadow:0 0 0 1px rgba(8,127,104,.035),var(--kv-shadow);margin:0 0 14px;}
.kv-avatar-editor-preview{width:84px;height:84px;border-radius:24px;padding:3px;background:linear-gradient(135deg,#087f68,#2563eb);box-shadow:0 0 0 3px rgba(8,127,104,.10),0 8px 22px rgba(8,127,104,.12);}
.kv-avatar-editor-preview img,.kv-avatar-editor-fallback{width:100%;height:100%;border-radius:20px;display:grid;place-items:center;object-fit:cover;background:#eef8f4;}
.kv-avatar-editor-fallback{font-size:24px;font-weight:900;color:#087f68;background:linear-gradient(145deg,#f6fbf9,#e8f5f0);}
.kv-avatar-editor-copy{min-width:0;}
.kv-avatar-editor-copy strong{display:block;font-size:15px;margin-bottom:5px;}
.kv-avatar-editor-copy p{margin:0 0 10px;color:var(--kv-muted);font-size:12px;line-height:1.75;}
.kv-avatar-editor-actions{display:flex;gap:7px;flex-wrap:wrap;}
.kv-avatar-editor-actions button,.kv-avatar-editor-actions label{min-height:40px!important;margin:0!important;border-radius:12px!important;}
.kv-public-search-results{margin-top:12px;display:grid;gap:8px;}
.kv-public-search-results.is-loading{opacity:.72;}
.kv-public-search-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:16px;border:1px solid rgba(8,127,104,.12);background:rgba(255,255,255,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 6px 18px rgba(16,35,31,.045);}
.kv-public-search-avatar{width:48px;height:48px;border-radius:15px;overflow:hidden;background:linear-gradient(145deg,#f5fbf9,#e5f5ef);display:grid;place-items:center;color:#087f68;font-weight:900;font-size:14px;}
.kv-public-search-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.kv-public-search-main{min-width:0;}
.kv-public-search-main strong{display:block;font-size:13px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kv-public-search-main span{display:block;font-size:11px;color:var(--kv-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;}
.kv-public-search-meta{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin-top:4px;font-size:10px;color:var(--kv-muted);}
.kv-public-search-cta{min-height:38px!important;border-radius:11px!important;padding:0 10px!important;font-size:11px!important;white-space:nowrap;}
.kv-public-search-empty{padding:12px;text-align:center;font-size:12px;color:var(--kv-muted);border:1px dashed rgba(8,127,104,.18);border-radius:14px;}
@media (max-width:560px){.kv-avatar-editor{grid-template-columns:1fr;justify-items:center;text-align:center;}.kv-avatar-editor-actions{justify-content:center;}.kv-public-search-item{grid-template-columns:auto 1fr;}.kv-public-search-cta{grid-column:1/-1;width:100%;}}


/* ---------- v34 visual bug fixes: public landing ---------- */
/* SVG icons injected by key-visual-v33.js: keep them small, outlined and brand-colored. */
.public-landing .kv-svg-icon{
  width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;
  display:grid!important;place-items:center!important;margin:0 0 12px!important;
  font-size:0!important;line-height:0!important;color:var(--kv-brand)!important;filter:none!important;
}
.public-landing .kv-svg-icon svg{
  width:100%!important;height:100%!important;display:block!important;overflow:visible!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
.public-landing .landing-category-grid button>.kv-svg-icon{
  width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;margin:0 0 12px!important;
}
.public-landing .landing-category-grid button>.kv-svg-icon svg{width:28px!important;height:28px!important;}
.public-landing .landing-steps article>.kv-svg-icon{
  width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;margin:0 0 18px!important;
}

/* Explicit form geometry prevents label/input overlap across the CSS cascade. */
.auth-form .field{display:block!important;position:relative!important;margin:0 0 16px!important;}
.auth-form .field>label,.auth-form .field>.field-label{
  display:block!important;position:static!important;width:auto!important;height:auto!important;min-height:0!important;
  margin:0 0 7px!important;padding:0!important;transform:none!important;font-size:12px!important;
  line-height:1.6!important;font-weight:750!important;color:var(--text-secondary,var(--text))!important;
}
.auth-form .field>input,.auth-form .field>select,.auth-form .field>textarea,.auth-form .field>.password-row{
  position:relative!important;z-index:1!important;
}
.auth-form .password-row{display:flex!important;align-items:center!important;gap:6px!important;}
.auth-form .password-row .pw-toggle{
  min-width:44px!important;min-height:44px!important;width:44px!important;height:44px!important;
  display:grid!important;place-items:center!important;flex:0 0 44px!important;
}

/* Accessible touch targets and stronger secondary-link contrast. */
.public-landing{--ui-muted:#4f6f65;}
.public-landing .landing-quick-links{gap:8px!important;}
.public-landing .landing-quick-links button{
  min-height:44px!important;padding:8px 4px!important;color:#4f6f65!important;line-height:1.4!important;
}
.public-landing .landing-login-btn,.public-landing .landing-signup-btn,.public-landing .landing-icon-btn{min-height:44px!important;}
.public-landing .landing-login-btn{padding-inline:12px!important;}
.public-landing .landing-signup-btn{padding-inline:14px!important;}
.public-landing .landing-icon-btn{
  width:44px!important;height:44px!important;display:grid!important;place-items:center!important;padding:0!important;
}
[data-theme="dark"] .public-landing{--ui-muted:#a5beb7;}
[data-theme="dark"] .public-landing .landing-quick-links button{color:#a5beb7!important;}
@media (max-width:520px){
  .public-landing .landing-nav-actions{gap:4px!important;}
  .public-landing .landing-icon-btn{display:grid!important;}
  .public-landing .landing-login-btn{padding-inline:9px!important;font-size:12px!important;}
  .public-landing .landing-signup-btn{padding-inline:11px!important;font-size:12px!important;}
}
