/* Nexa V3.6 stability polish.
   Deliberately does NOT hide modules or change app state. It only refines presentation. */
:root{
  --v36-line:#e4eaf2;
  --v36-surface:#fff;
  --v36-soft:#f8fafc;
  --v36-ink:#0f172a;
  --v36-muted:#64748b;
  --v36-shadow:0 14px 38px rgba(15,23,42,.075);
  --v36-shadow-sm:0 8px 22px rgba(15,23,42,.055);
}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{background:#f4f7fb}
button,input,select,textarea{font:inherit}
button{transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease}
button:not(:disabled):active{transform:translateY(1px)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid rgba(37,99,235,.16);outline-offset:2px}

/* Auth: keep exact layout, only improve finish. */
.auth-card{border:1px solid rgba(226,232,240,.92)!important;box-shadow:0 28px 75px rgba(15,23,42,.12)!important;background:rgba(255,255,255,.97)!important}
.auth-input{border-color:#dfe6ef!important;background:#f8fafc!important}
.auth-input:focus-within{background:#fff!important;box-shadow:0 0 0 4px rgba(37,99,235,.07)!important}
.auth-submit:hover{transform:translateY(-1px)}

/* User app: prevent the desktop hero from swallowing the page. */
.user-app{padding-bottom:104px!important}
.app-top{box-shadow:0 5px 18px rgba(15,23,42,.025)}
.home-module,.home-strip>div,.announcement,.plan-card,.fund-card,.menu-item,.team-box,.level-card,.center-card,.request-card,.order-card,.calendar-card,.checkin-card,.legal-card{border-color:var(--v36-line)!important}
.home-module,.home-strip>div,.plan-card,.fund-card,.team-box,.level-card,.center-card{box-shadow:var(--v36-shadow-sm)!important}
.common-menu-grid button,.service-card-grid button{border:1px solid var(--v36-line)!important;background:linear-gradient(180deg,#fff,#fafcff)!important}
.common-menu-grid button:hover,.service-card-grid button:hover,.plan-card:hover,.fund-card:hover{transform:translateY(-2px);box-shadow:var(--v36-shadow)!important}
.section-title-row h3,.module-head h3{color:var(--v36-ink)}

/* Team: headings and cards remain readable after the dark hero area. */
.white-heading{color:var(--v36-ink)!important;padding-top:10px!important;padding-bottom:2px!important}
.level-card{background:#fff!important}
.level-title{color:var(--v36-ink)!important}
.level-grid small{color:var(--v36-muted)!important}

/* Logout is now a real POST form; keep it visually identical. */
.logout-form{margin:0;padding:0;width:100%}
.logout-form .logout{display:block}

/* Inner pages */
.page-title{box-shadow:0 4px 16px rgba(15,23,42,.035)}
.field input,.field select,.field textarea{border-color:#dfe6ef!important}
.field input:focus,.field select:focus,.field textarea:focus{background:#fff!important;box-shadow:0 0 0 4px rgba(37,99,235,.07)!important}
.menu-item:hover{background:#fbfcfe!important}
.bottom-nav{box-shadow:0 16px 42px rgba(15,23,42,.13)!important}

/* Desktop user panel: full-width content, compact hero, visible quick actions. */
@media(min-width:900px){
  .hero-brand{display:grid!important;grid-template-columns:minmax(0,1.55fr) minmax(300px,.45fr)!important;gap:16px!important;align-items:stretch!important;padding:18px 22px!important;background:transparent!important}
  .hero-logo{height:280px!important;min-height:280px!important;border-radius:28px!important}
  .theme-hero{min-height:280px!important}
  body[data-theme-pack="blue"] .shortcut-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;padding:0!important;color:var(--v36-ink)!important;align-content:stretch!important}
  body[data-theme-pack="blue"] .shortcut{min-height:132px!important;background:#fff!important;color:var(--v36-ink)!important;border:1px solid var(--v36-line)!important;border-radius:22px!important;box-shadow:var(--v36-shadow-sm)!important;padding:18px 12px!important}
  body[data-theme-pack="blue"] .shortcut .ico{width:44px!important;height:44px!important;border-radius:14px!important;background:#eef4ff!important;color:#2563eb!important;box-shadow:none!important}
  body[data-theme-pack="blue"] .shortcut:hover{transform:translateY(-2px);box-shadow:var(--v36-shadow)!important}
  .plans-wrap{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .fund-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #teamLevels{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;padding-bottom:24px!important}
  #teamLevels .level-card{margin:0!important;min-height:210px!important}
  .white-heading{margin-top:22px!important;margin-bottom:10px!important}
  .bottom-nav{left:50%!important;right:auto!important;width:min(860px,calc(100% - 36px))!important;transform:translateX(-50%)!important}
}

@media(max-width:899px){
  .hero-logo,.theme-hero{min-height:0!important}
  .white-heading{padding-left:16px!important}
  #teamLevels .level-card{margin-left:12px!important;margin-right:12px!important}
}

/* Admin: modern finish without changing visibility/layout logic. */
.admin-shell{background:#f4f7fb!important}
.admin-sidebar{box-shadow:8px 0 30px rgba(15,23,42,.10)!important}
.admin-nav button{border-radius:12px!important}
.admin-nav button:hover{background:rgba(255,255,255,.07)!important}
.admin-nav button.active{box-shadow:0 10px 24px rgba(37,99,235,.22)!important}
.admin-topbar{background:rgba(255,255,255,.94)!important;backdrop-filter:blur(16px);border-bottom:1px solid var(--v36-line)!important;box-shadow:0 5px 18px rgba(15,23,42,.025)!important}
.admin-panel{border:1px solid var(--v36-line)!important;box-shadow:var(--v36-shadow-sm)!important;background:#fff!important}
.dash-card{border:1px solid var(--v36-line)!important;box-shadow:var(--v36-shadow-sm)!important;background:#fff!important}
.table-tools{background:#f8fafc!important;border:1px solid var(--v36-line)!important;border-radius:14px!important}
.export-bar button{background:#fff!important;border:1px solid #dce5ef!important;border-radius:10px!important;font-weight:800!important}
.data-table{border-collapse:separate!important;border-spacing:0 7px!important}
.data-table th{color:#7b8798!important;font-size:10px!important;letter-spacing:.06em!important;border:0!important}
.data-table tbody tr{background:#fbfcfe!important}
.data-table tbody td{border-top:1px solid #e7edf4!important;border-bottom:1px solid #e7edf4!important;padding-top:12px!important;padding-bottom:12px!important}
.data-table tbody td:first-child{border-left:1px solid #e7edf4!important;border-radius:12px 0 0 12px!important}
.data-table tbody td:last-child{border-right:1px solid #e7edf4!important;border-radius:0 12px 12px 0!important}
.data-table tbody tr:hover{background:#fff!important;box-shadow:0 8px 22px rgba(15,23,42,.045)!important}
.admin-field input,.admin-field select,.admin-field textarea,.modal-field input,.modal-field select,.modal-field textarea{border-color:#dce5ef!important;background:#f8fafc!important;border-radius:11px!important}
.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus,.modal-field input:focus,.modal-field select:focus,.modal-field textarea:focus{background:#fff!important;border-color:#a8c3ff!important;box-shadow:0 0 0 4px rgba(37,99,235,.07)!important;outline:none!important}
.add-btn,.green-btn,.action-btn{font-weight:850!important}
.report-cards>div{border:1px solid var(--v36-line)!important;background:linear-gradient(180deg,#fff,#f9fbfd)!important}
.settings-tabs{background:#f8fafc!important;border:1px solid var(--v36-line)!important;border-radius:14px!important;padding:5px!important}
.settings-tabs button.active{background:#fff!important;box-shadow:0 5px 14px rgba(15,23,42,.065)!important}
.admin-modal{border-radius:24px!important;box-shadow:0 30px 80px rgba(15,23,42,.22)!important}
