/* ZSOne Platform v0.2.8 — AUTH / ACCOUNT / WORKSPACE FINAL polish.
   Additive only: preserves v0.2.7 structure and behavior. */

/* ---------- Global finish + keyboard accessibility ---------- */
.auth-page,.zs-platform-page{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.auth-page :where(a,button,select,input):focus-visible,
.zs-platform-page :where(a,button,select,input):focus-visible{
  outline:3px solid rgba(199,154,53,.24);outline-offset:2px
}
.zs-platform-page :where(a,button){-webkit-tap-highlight-color:transparent}

/* ---------- Authentication screens ---------- */
.auth-page .auth-topbar{box-shadow:0 1px 0 rgba(45,41,34,.02)}
.auth-page .auth-card{box-shadow:0 28px 78px rgba(53,44,27,.115)}
.auth-page .auth-input-wrap{border-radius:11px}
.auth-page .auth-input-wrap:focus-within>.auth-icon{color:#a87b1c}
.auth-page .auth-field>span{letter-spacing:.01em}
.auth-page .auth-submit{min-width:0}
.auth-page .auth-links{min-height:32px}
.auth-page .auth-link{display:inline-flex;align-items:center;gap:7px}
.auth-page .auth-link .auth-icon{width:15px;height:15px}
.auth-page .auth-alert{box-shadow:0 6px 18px rgba(51,43,29,.025)}
.auth-page .auth-policy{padding:10px 12px;border:1px solid #eee7da;border-radius:9px;background:#faf8f3}

/* ---------- Platform shell finish ---------- */
.zs-platform-sidebar{scrollbar-width:thin;scrollbar-color:#555b64 transparent}
.zs-platform-sidebar::-webkit-scrollbar{width:6px}
.zs-platform-sidebar::-webkit-scrollbar-thumb{background:#555b64;border-radius:99px}
.zs-platform-topbar{box-shadow:0 6px 24px rgba(38,34,28,.028)}
.zs-platform-content{max-width:1240px}
.zs-platform-heading h1{font-weight:820}
.zs-platform-language,.zs-profile-trigger{transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.zs-platform-language:hover{border-color:#d1c5ad;background:#fffdf9}
.zs-profile-dropdown{transform-origin:top right}
.zs-profile-dropdown a,.zs-profile-dropdown button{position:relative}
.zs-profile-dropdown a:focus-visible,.zs-profile-dropdown button:focus-visible{outline:0;background:#f6f2e9;box-shadow:inset 0 0 0 2px rgba(199,154,53,.28)}
.zs-profile-summary span{overflow-wrap:anywhere;white-space:normal}
.zs-session-pill{box-shadow:0 4px 12px rgba(49,108,72,.04)}
.zs-panel{transition:border-color .16s ease,box-shadow .16s ease}
.zs-panel:hover{border-color:#ded8cc;box-shadow:0 10px 28px rgba(43,38,29,.045)}

/* Static/locked project tools are intentionally non-interactive. */
.zs-sidebar-static,.zs-module-card[aria-disabled="true"]{cursor:default;user-select:none}
.zs-sidebar-static{pointer-events:none}
.zs-module-card[aria-disabled="true"]{transform:none!important}
.zs-module-card[aria-disabled="true"]:hover{border-color:#e5e1d8;box-shadow:none}
.zs-module-card.is-next[aria-disabled="true"]:hover{border-color:#e2c990}

/* Account final spacing */
.zs-account-profile{box-shadow:0 8px 24px rgba(43,38,29,.025)}
.zs-account-profile h3{overflow-wrap:anywhere}
.zs-account-grid>.zs-panel{min-width:0}
.zs-detail strong,.zs-security-card strong{font-variant-numeric:tabular-nums}
.zs-security-card small{overflow-wrap:anywhere}
.zs-session-control{border-radius:12px}

/* Workspace final spacing */
.zs-workspace-welcome,.zs-status-tile{transition:border-color .16s ease,box-shadow .16s ease}
.zs-workspace-welcome:hover,.zs-status-tile:hover{border-color:#ddd7cb;box-shadow:0 8px 24px rgba(43,38,29,.04)}
.zs-project-empty-stage{background:
  radial-gradient(circle at 82% 20%,rgba(218,181,99,.09),transparent 28%),
  linear-gradient(145deg,#fbfaf7,#f6f3eb)}
.zs-project-empty-copy p,.zs-panel-head p,.zs-module-card>p,.zs-activity-empty p{overflow-wrap:anywhere}
.zs-readiness-row em{white-space:nowrap}
.zs-module-card{overflow:hidden}

/* ---------- Final responsive guard rails ---------- */
@media(max-width:820px){
  .zs-platform-sidebar{overscroll-behavior:contain}
  body.zs-sidebar-open{overflow:hidden}
  .zs-platform-content{width:min(100% - 28px,1240px)}
  .zs-platform-topbar{box-shadow:0 4px 18px rgba(38,34,28,.04)}
}
@media(max-width:620px){
  .zs-platform-actions{gap:7px}
  .zs-platform-language{height:40px;min-width:62px;justify-content:center;padding:0 6px}
  .zs-platform-language select{max-width:42px;padding:0 2px;text-align:center}
  .zs-profile-trigger{min-width:50px;padding-right:6px}
  .zs-page-intro{padding-right:2px}
  .zs-page-intro h2{overflow-wrap:anywhere}
  .zs-panel-head{padding:17px 16px}
  .zs-panel-body{padding:16px}
  .zs-project-hub-head{align-items:flex-start;flex-direction:column}
  .zs-project-state{align-self:flex-start}
}
@media(max-width:430px){
  .auth-page .auth-topbar{align-items:center}
  .auth-page .auth-top-actions{min-width:0}
  .auth-page .auth-language select{width:84px}
  .auth-page .auth-main{width:min(100% - 20px,560px)}
  .auth-page .auth-card{padding:22px 16px}
  .auth-page .auth-intro h1{font-size:34px}
  .auth-page .auth-intro>p{font-size:14px}
  .auth-page .auth-trust{font-size:12px}
  .zs-platform-content{width:calc(100% - 20px);padding:22px 0 42px}
  .zs-platform-topbar{padding:9px 10px;gap:8px}
  .zs-platform-title-row{gap:7px}
  .zs-platform-heading h1{max-width:110px;font-size:14px}
  .zs-platform-actions{gap:5px}
  .zs-platform-language{min-width:54px;padding:0 4px}
  .zs-profile-trigger{grid-template-columns:34px 12px;gap:5px;padding-left:4px}
  .zs-profile-dropdown{position:fixed;top:66px;right:10px;left:10px;width:auto}
  .zs-page-intro h2{font-size:26px}
  .zs-account-profile{grid-template-columns:44px minmax(0,1fr);gap:12px}
  .zs-account-avatar{width:44px;height:44px;border-radius:12px}
  .zs-account-profile h3{font-size:18px}
  .zs-workspace-welcome h3{font-size:20px}
  .zs-module-grid{grid-template-columns:1fr}
  .zs-module-card{min-height:118px}
  .zs-workspace-status-grid{gap:8px}
}
@media(max-width:350px){
  .zs-platform-heading{display:none}
  .zs-platform-actions{margin-left:auto}
  .auth-page .auth-brand img{width:104px}
  .auth-page .auth-language select{width:74px}
}

@media(prefers-reduced-motion:reduce){
  .auth-page *,.zs-platform-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
