/* auth.css — section 1 */
:root{
  --auth-bg:#f4efe5;
  --auth-bg-soft:#fbfaf7;
  --auth-card:#ffffff;
  --auth-ink:#1f2229;
  --auth-muted:#70737b;
  --auth-line:#e5dfd4;
  --auth-gold:#c79a35;
  --auth-gold-dark:#a87b1c;
  --auth-gold-soft:#f0dfb5;
  --auth-danger:#b7493c;
  --auth-danger-bg:#fff4f1;
  --auth-success:#2f7655;
  --auth-success-bg:#f1faf5;
  --auth-shadow:0 26px 70px rgba(53,44,27,.12);
  --auth-radius:18px;
}
*{box-sizing:border-box}
html{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:var(--auth-bg-soft);color:var(--auth-ink)}
body{margin:0;min-height:100vh;background:linear-gradient(130deg,#fbfaf7 0%,#f8f4ec 55%,#efe4cc 100%)}
a{color:inherit}
button,input,select{font:inherit}
.auth-shell{min-height:100vh;display:flex;flex-direction:column}
.auth-topbar{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,64px);border-bottom:1px solid rgba(160,146,118,.18);background:rgba(251,250,247,.88);backdrop-filter:blur(16px);position:relative;z-index:2}
.auth-brand{display:flex;align-items:center;text-decoration:none;min-width:0}
.auth-brand img{display:block;width:148px;height:auto;object-fit:contain}
.auth-top-actions{display:flex;align-items:center;gap:16px}
.auth-language{display:flex;align-items:center;gap:10px;color:var(--auth-muted);font-size:13px;font-weight:700}
.auth-language select{height:38px;border:1px solid var(--auth-line);background:#fff;border-radius:10px;padding:0 32px 0 12px;color:var(--auth-ink);font-weight:700;outline:none}
.auth-language select:focus{border-color:var(--auth-gold);box-shadow:0 0 0 3px rgba(199,154,53,.13)}
.auth-back{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:13px;font-weight:750;color:#3b3e45;padding:10px 12px;border-radius:10px}
.auth-back:hover{background:#f0eadf}
.auth-icon{width:18px;height:18px;flex:0 0 auto}
.auth-main{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,560px);gap:clamp(42px,7vw,110px);align-items:center;width:min(1180px,calc(100% - 44px));margin:0 auto;padding:70px 0 78px}
.auth-intro{max-width:590px;padding:8px 0}
.auth-mark-wrap{width:74px;height:74px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 34px rgba(65,52,28,.08);border:1px solid rgba(194,175,138,.25);margin-bottom:30px}
.auth-mark-wrap img{width:51px;height:55px;object-fit:contain}
.auth-kicker{display:flex;align-items:center;gap:9px;color:var(--auth-gold-dark);font-size:13px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}
.auth-intro h1{font-size:clamp(42px,5vw,66px);line-height:1.02;letter-spacing:-.045em;margin:0;max-width:650px}
.auth-intro>p{font-size:18px;line-height:1.65;color:var(--auth-muted);max-width:540px;margin:22px 0 0}
.auth-trust{margin-top:36px;display:flex;align-items:center;gap:18px;color:#4d5058}
.auth-trust span{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800}
.auth-trust span .auth-icon{color:var(--auth-gold-dark)}
.auth-trust small{color:#96928b;font-weight:700}
.auth-card-wrap{width:100%}
.auth-card{background:rgba(255,255,255,.96);border:1px solid rgba(194,175,138,.28);border-radius:var(--auth-radius);box-shadow:var(--auth-shadow);padding:34px}
.auth-card-title{font-size:26px;letter-spacing:-.025em;margin:0 0 8px}
.auth-card-subtitle{color:var(--auth-muted);font-size:14px;line-height:1.55;margin:0 0 26px}
.auth-form{display:grid;gap:18px}
.auth-field{display:grid;gap:8px;font-size:13px;font-weight:800;color:#3a3d44}
.auth-input-wrap{position:relative;display:flex;align-items:center}
.auth-input-wrap>.auth-icon{position:absolute;left:14px;color:#98958f;width:17px;height:17px;pointer-events:none}
.auth-input-wrap input{width:100%;height:50px;border:1px solid var(--auth-line);border-radius:11px;background:#fff;color:var(--auth-ink);padding:0 46px 0 43px;outline:none;transition:.18s border-color,.18s box-shadow}
.auth-input-wrap input[type=email]{padding-right:14px}
.auth-input-wrap input:focus{border-color:var(--auth-gold);box-shadow:0 0 0 3px rgba(199,154,53,.13)}
.auth-password-toggle{position:absolute;right:7px;width:36px;height:36px;border:0;background:transparent;color:#8e8b84;border-radius:9px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.auth-password-toggle:hover,.auth-password-toggle:focus-visible{background:#f4efe6;color:#4a4d54;outline:none}
.auth-submit{height:50px;border:0;border-radius:11px;background:linear-gradient(135deg,#d1a646,#bc8d2c);color:#1f1d19;font-weight:900;cursor:pointer;box-shadow:0 10px 22px rgba(183,135,37,.18);transition:.18s transform,.18s box-shadow}
.auth-submit-link{text-decoration:none;display:flex;align-items:center;justify-content:center}
.auth-submit:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(183,135,37,.23)}
.auth-submit:focus-visible{outline:3px solid rgba(199,154,53,.25);outline-offset:2px}
.auth-submit[disabled]{opacity:.68;cursor:not-allowed;transform:none}
.auth-links{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}
.auth-link{font-size:13px;color:#4d5058;font-weight:800;text-decoration:none}
.auth-link:hover{text-decoration:underline;text-decoration-color:var(--auth-gold);text-underline-offset:4px}
.auth-note{font-size:12px;color:#8d8a84;line-height:1.55;margin:24px 0 0;padding-top:18px;border-top:1px solid #eee9e0}
.auth-alert{display:flex;align-items:flex-start;gap:10px;border-radius:11px;padding:13px 14px;margin:0 0 20px;font-size:13px;line-height:1.45;font-weight:700}
.auth-alert .auth-icon{margin-top:1px}
.auth-alert--error{background:var(--auth-danger-bg);color:#86362d;border:1px solid #f1d4cf}
.auth-alert--success{background:var(--auth-success-bg);color:#256342;border:1px solid #cfe9d9}
.auth-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 24px}
.auth-meta{border:1px solid var(--auth-line);border-radius:12px;padding:15px;background:#fcfbf8}
.auth-meta span{display:block;color:var(--auth-muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px}
.auth-meta strong{font-size:14px;word-break:break-word}
.auth-status{display:inline-flex!important;align-items:center;gap:7px;color:var(--auth-success)!important}
.auth-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.auth-account-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:16px}
.auth-secondary,.auth-logout{height:46px;border-radius:10px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-size:13px;font-weight:850}
.auth-secondary{background:#f1ede6;border:1px solid #e2dbcf;color:#34373d}
.auth-logout{background:#fff;border:1px solid #e4d5d2;color:#95473e;cursor:pointer}
.auth-next{margin-top:22px;padding:18px;border-radius:13px;background:#f5f0e5;border:1px solid #e7dcc7}
.auth-next strong{display:block;font-size:14px;margin-bottom:6px}
.auth-next p{margin:0;color:#726f69;font-size:13px;line-height:1.55}
.auth-policy{margin:5px 0 0;color:#8a8781;font-size:12px;line-height:1.5}
.auth-inline-success{color:var(--auth-success);font-weight:800;font-size:13px}
@media (max-width:940px){
  .auth-main{grid-template-columns:1fr;width:min(620px,calc(100% - 34px));padding:48px 0 64px;gap:32px}
  .auth-intro{text-align:center;margin:0 auto}
  .auth-mark-wrap{margin:0 auto 22px}
  .auth-kicker{justify-content:center}
  .auth-intro h1{font-size:clamp(38px,10vw,54px)}
  .auth-intro>p{margin-left:auto;margin-right:auto;font-size:16px}
  .auth-trust{justify-content:center}
}
@media (max-width:680px){
  .auth-topbar{height:auto;min-height:74px;padding:12px 17px;gap:12px}
  .auth-brand img{width:116px}
  .auth-top-actions{gap:8px}
  .auth-language>span,.auth-back span{display:none}
  .auth-language select{width:98px;padding-left:9px;padding-right:20px}
  .auth-back{width:38px;height:38px;padding:0;justify-content:center;border:1px solid var(--auth-line);background:#fff}
  .auth-main{width:min(100% - 24px,560px);padding:34px 0 46px;gap:25px}
  .auth-intro h1{font-size:36px}
  .auth-intro>p{font-size:15px;margin-top:16px}
  .auth-trust{margin-top:24px;flex-wrap:wrap;gap:10px}
  .auth-card{padding:24px 18px;border-radius:15px}
  .auth-meta-grid{grid-template-columns:1fr}
  .auth-account-actions{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.auth-submit{transition:none}}


/* auth.css — section 2 */

/* ZSOne Platform v0.2.3 — locale/account/workspace refinement. */
.auth-account-entry{margin:2px 0 24px}
.auth-account-entry .auth-submit{width:100%}
.auth-submit .auth-icon{width:17px;height:17px}
.auth-workspace-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.auth-section-label{display:inline-flex;align-items:center;gap:8px;color:var(--auth-gold-dark);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}
.auth-section-label .auth-icon{width:16px;height:16px}
.auth-compact-action{height:40px;white-space:nowrap}
.auth-readiness-grid{display:grid;gap:11px;margin:18px 0 22px}
.auth-readiness-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border:1px solid var(--auth-line);border-radius:12px;background:#fcfbf8}
.auth-readiness-item--next{background:#f6f0e4;border-color:#e6d8bd}
.auth-readiness-icon{width:38px;height:38px;border-radius:10px;background:#fff;border:1px solid #e7dfd2;display:flex;align-items:center;justify-content:center;color:var(--auth-gold-dark)}
.auth-readiness-icon .auth-icon{width:18px;height:18px}
.auth-readiness-item strong{display:block;font-size:13px;margin:1px 0 4px}
.auth-readiness-item p{margin:0;color:var(--auth-muted);font-size:12px;line-height:1.5}
.auth-empty-state{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:start;padding:18px;border:1px dashed #d9cfbd;border-radius:13px;background:#fff}
.auth-empty-icon{width:48px;height:48px;border-radius:12px;background:#f5efe3;color:var(--auth-gold-dark);display:flex;align-items:center;justify-content:center}
.auth-empty-icon .auth-icon{width:23px;height:23px}
.auth-empty-state strong{display:block;font-size:14px;margin:2px 0 6px}
.auth-empty-state p{margin:0;color:var(--auth-muted);font-size:12px;line-height:1.55}
.auth-workspace-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:18px}
.auth-workspace-actions form{margin:0}
.auth-workspace-actions .auth-logout{height:46px}
@media (max-width:680px){
  .auth-workspace-head{display:grid;grid-template-columns:1fr}
  .auth-compact-action{width:100%}
  .auth-workspace-actions{grid-template-columns:1fr}
  .auth-workspace-actions .auth-logout{width:100%}
}


/* auth.css — section 3 */
/* ZSOne Platform v0.2.4 — authentication completion and account security. */
.auth-security-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 18px}
.auth-security-item{min-width:0;display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:start;padding:13px;border:1px solid var(--auth-line);border-radius:11px;background:#fcfbf8}
.auth-security-icon{width:36px;height:36px;border:1px solid #e7dfd2;border-radius:9px;background:#fff;color:var(--auth-gold-dark);display:flex;align-items:center;justify-content:center}
.auth-security-icon .auth-icon{width:17px;height:17px}
.auth-security-item small{display:block;color:var(--auth-muted);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin:1px 0 5px}
.auth-security-item strong{display:block;font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.auth-security-item em{display:block;margin-top:4px;color:var(--auth-muted);font-size:10px;font-style:normal;line-height:1.35;overflow-wrap:anywhere}
.auth-account-actions--security{margin-top:0}
.auth-session-danger{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;margin-top:12px;padding:15px;border:1px solid #ead8d4;border-radius:12px;background:#fffaf9}
.auth-session-danger strong{display:block;font-size:13px;margin-bottom:4px}
.auth-session-danger p{margin:0;color:var(--auth-muted);font-size:11px;line-height:1.45;max-width:430px}
.auth-session-danger form{margin:0}
.auth-danger{min-height:42px;border:1px solid #dfc5c0;border-radius:9px;background:#fff;color:#93443c;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap}
.auth-danger:hover{background:#fff4f2}
.auth-danger:focus-visible{outline:3px solid rgba(187,137,50,.2);outline-offset:2px}
.auth-danger .auth-icon{width:16px;height:16px}
@media (max-width:680px){
  .auth-security-grid{grid-template-columns:1fr}
  .auth-session-danger{grid-template-columns:1fr}
  .auth-session-danger form,.auth-danger{width:100%}
}


/* auth.css — section 4 */
/* ZSOne Platform v0.2.6 — professional account/workspace shell + homepage profile state. */

/* ---------- Shared protected platform shell ---------- */
.zs-platform-page{margin:0;min-height:100vh;background:#f6f5f1;color:#20242a}
.zs-platform-page *{box-sizing:border-box}
.zs-platform-shell{min-height:100vh;display:grid;grid-template-columns:246px minmax(0,1fr);background:#f6f5f1}
.zs-platform-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:22px 16px 16px;background:#25292f;color:#f5f4ef;border-right:1px solid rgba(255,255,255,.06);z-index:40}
.zs-sidebar-head{padding:2px 8px 22px;border-bottom:1px solid rgba(255,255,255,.08)}
.zs-sidebar-brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:#fff}
.zs-sidebar-brand img{display:block;width:34px;height:37px;object-fit:contain}
.zs-sidebar-brand span{font-size:22px;font-weight:850;letter-spacing:-.055em;line-height:1}
.zs-sidebar-product{display:block;margin-top:10px;color:#999eaa;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.zs-sidebar-nav{display:grid;gap:6px;padding:20px 0}
.zs-sidebar-nav a{min-height:46px;display:flex;align-items:center;gap:11px;padding:0 12px;border-radius:10px;color:#c8cbd1;text-decoration:none;font-size:13px;font-weight:750;transition:background .16s ease,color .16s ease}
.zs-sidebar-nav a:hover{background:#30353c;color:#fff}
.zs-sidebar-nav a.is-active{background:#f0d99f;color:#24272d}
.zs-nav-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.06)}
.zs-sidebar-nav a.is-active .zs-nav-icon{background:rgba(255,255,255,.46);color:#8f651d}
.zs-nav-icon .auth-icon{width:17px;height:17px}
.zs-sidebar-spacer{flex:1}
.zs-sidebar-session{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:12px 10px;margin-bottom:8px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:#2c3037}
.zs-sidebar-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#e1bb68;color:#282c32}
.zs-sidebar-avatar .auth-icon{width:19px;height:19px}
.zs-sidebar-session strong,.zs-sidebar-session small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-sidebar-session strong{font-size:12px;color:#fff}
.zs-sidebar-session small{margin-top:4px;font-size:10px;color:#969ca6}
.zs-sidebar-site{min-height:42px;display:flex;align-items:center;gap:10px;padding:0 11px;border-radius:9px;color:#aeb3bc;text-decoration:none;font-size:12px;font-weight:700}
.zs-sidebar-site:hover{background:#30353c;color:#fff}
.zs-sidebar-site .auth-icon{width:16px;height:16px}

.zs-platform-main{min-width:0;display:flex;flex-direction:column}
.zs-platform-topbar{position:sticky;top:0;z-index:30;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px clamp(22px,3.2vw,48px);background:rgba(255,255,255,.92);border-bottom:1px solid #e9e5dc;backdrop-filter:blur(14px)}
.zs-platform-title-row{display:flex;align-items:center;min-width:0;gap:12px}
.zs-sidebar-toggle{display:none;width:40px;height:40px;border:1px solid #ded9cf;border-radius:10px;background:#fff;color:#30343a;align-items:center;justify-content:center;cursor:pointer}
.zs-sidebar-toggle .auth-icon{width:19px;height:19px}
.zs-platform-heading{min-width:0}
.zs-platform-heading span{display:block;color:#9f752e;font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;margin-bottom:4px}
.zs-platform-heading h1{margin:0;font-size:18px;line-height:1.2;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zs-platform-actions{display:flex;align-items:center;gap:10px}
.zs-platform-language{height:40px;display:flex;align-items:center;gap:6px;padding:0 8px 0 10px;border:1px solid #e1ddd4;border-radius:10px;background:#fff;color:#8d6828}
.zs-platform-language .auth-icon{width:16px;height:16px}
.zs-platform-language select{height:30px;border:0;background:transparent;color:#30343a;font-size:11px;font-weight:850;outline:none;cursor:pointer}
.zs-profile-menu{position:relative}
.zs-profile-trigger{min-height:44px;max-width:260px;display:grid;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:4px 9px 4px 5px;border:1px solid #dedad1;border-radius:12px;background:#fff;color:#292d33;cursor:pointer;text-align:left}
.zs-profile-trigger:hover,.zs-profile-menu.is-open .zs-profile-trigger{border-color:#cdbb95;box-shadow:0 8px 22px rgba(44,38,26,.08)}
.zs-profile-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#f1dfb8;color:#8f651d}
.zs-profile-avatar .auth-icon{width:18px;height:18px}
.zs-profile-copy{min-width:0}
.zs-profile-copy strong,.zs-profile-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-profile-copy strong{font-size:11px}
.zs-profile-copy small{margin-top:3px;color:#858992;font-size:9px}
.zs-profile-caret{width:14px;height:14px;color:#777b83;transition:transform .16s ease}
.zs-profile-menu.is-open .zs-profile-caret{transform:rotate(180deg)}
.zs-profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:248px;padding:7px;background:#fff;border:1px solid #e3ded4;border-radius:12px;box-shadow:0 18px 45px rgba(35,32,26,.14);opacity:0;visibility:hidden;transform:translateY(-4px);transition:.14s ease;z-index:80}
.zs-profile-menu.is-open .zs-profile-dropdown{opacity:1;visibility:visible;transform:none}
.zs-profile-summary{padding:10px 11px 12px;margin-bottom:5px;border-bottom:1px solid #ece7de}
.zs-profile-summary strong,.zs-profile-summary span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-profile-summary strong{font-size:12px;color:#24282e}
.zs-profile-summary span{margin-top:5px;color:#858990;font-size:10px}
.zs-profile-dropdown a,.zs-profile-dropdown button{width:100%;min-height:39px;display:flex;align-items:center;gap:10px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:#363a40;text-decoration:none;font:inherit;font-size:11px;font-weight:750;cursor:pointer;text-align:left}
.zs-profile-dropdown a:hover,.zs-profile-dropdown button:hover{background:#f6f2e9;color:#171a1f}
.zs-profile-dropdown form{margin:4px 0 0;padding-top:4px;border-top:1px solid #eee9e0}
.zs-profile-dropdown button{color:#964a40}
.zs-profile-dropdown .auth-icon{width:16px;height:16px}

.zs-platform-content{width:min(1240px,calc(100% - 48px));margin:0 auto;padding:36px 0 60px}
.zs-page-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:24px}
.zs-page-kicker{display:inline-flex;align-items:center;gap:7px;color:#9b7128;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.zs-page-kicker .auth-icon{width:15px;height:15px}
.zs-page-intro h2{margin:0;font-size:clamp(28px,3vw,38px);line-height:1.08;letter-spacing:-.035em}
.zs-page-intro p{max-width:720px;margin:10px 0 0;color:#767a82;font-size:13px;line-height:1.6}
.zs-session-pill{flex:0 0 auto;min-height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #d9e7dd;border-radius:999px;background:#f5fbf7;color:#377257;font-size:10px;font-weight:850}
.zs-session-pill .auth-icon{width:14px;height:14px}

.zs-panel{background:#fff;border:1px solid #e5e1d8;border-radius:14px;box-shadow:0 8px 26px rgba(43,38,29,.035)}
.zs-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:19px 20px;border-bottom:1px solid #eee9e0}
.zs-panel-head h3{margin:0;font-size:14px;letter-spacing:-.01em}
.zs-panel-head p{margin:5px 0 0;color:#858990;font-size:11px;line-height:1.5}
.zs-panel-body{padding:20px}

/* ---------- Account v0.2.6 ---------- */
.zs-account-profile{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px;margin-bottom:18px;background:#fff;border:1px solid #e5e1d8;border-radius:14px}
.zs-account-avatar{width:58px;height:58px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#f0ddb2,#d6aa50);color:#282c31}
.zs-account-avatar .auth-icon{width:27px;height:27px}
.zs-account-profile h3{margin:0;font-size:20px;letter-spacing:-.025em}
.zs-account-profile p{margin:5px 0 0;color:#7b7f87;font-size:12px;overflow-wrap:anywhere}
.zs-account-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.zs-badge{min-height:29px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border-radius:999px;background:#f4f1e9;color:#5a5e65;font-size:9px;font-weight:850;letter-spacing:.02em}
.zs-badge--success{background:#eff8f2;color:#377257}
.zs-badge .auth-icon{width:13px;height:13px}
.zs-account-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:18px;margin-bottom:18px}
.zs-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}
.zs-detail{min-width:0;padding:16px 18px;border-right:1px solid #eee9e0;border-bottom:1px solid #eee9e0}
.zs-detail:nth-child(2n){border-right:0}.zs-detail:nth-last-child(-n+2){border-bottom:0}
.zs-detail span{display:block;color:#8c8f95;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.07em;margin-bottom:7px}
.zs-detail strong{display:block;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.zs-detail .zs-inline-status{display:inline-flex;align-items:center;gap:7px;color:#377257}
.zs-inline-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.zs-quick-actions{display:grid;gap:9px}
.zs-action-link,.zs-action-button{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 13px;border:1px solid #e3ded5;border-radius:10px;background:#fff;color:#34383e;text-decoration:none;font-size:11px;font-weight:800;cursor:pointer}
.zs-action-link:hover,.zs-action-button:hover{background:#f8f5ee;border-color:#d3c5a9}
.zs-action-link>span,.zs-action-button>span{display:inline-flex;align-items:center;gap:9px}
.zs-action-link .auth-icon,.zs-action-button .auth-icon{width:16px;height:16px;color:#9a7028}
.zs-action-button{width:100%;font:inherit}
.zs-security-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.zs-security-card{min-width:0;padding:14px;border:1px solid #ebe6dd;border-radius:11px;background:#fbfaf7}
.zs-security-card .zs-security-label{display:flex;align-items:center;gap:7px;color:#8c8f95;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
.zs-security-card .zs-security-label .auth-icon{width:14px;height:14px;color:#9a7028}
.zs-security-card strong{display:block;margin-top:9px;font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.zs-security-card small{display:block;margin-top:4px;color:#8d9096;font-size:9px;line-height:1.4;overflow-wrap:anywhere}
.zs-session-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:18px 20px}
.zs-session-control strong{display:block;font-size:12px}
.zs-session-control p{margin:5px 0 0;color:#858990;font-size:10px;line-height:1.5}
.zs-session-control form{margin:0}

/* ---------- Workspace shell refinement ---------- */
.zs-workspace-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:22px;margin-bottom:18px;background:#fff;border:1px solid #e5e1d8;border-radius:14px}
.zs-workspace-hero h3{margin:0;font-size:21px;letter-spacing:-.025em}
.zs-workspace-hero p{margin:6px 0 0;color:#7d8188;font-size:12px;line-height:1.55}
.zs-workspace-role{min-height:32px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border-radius:999px;background:#f1e2be;color:#7e581c;font-size:9px;font-weight:850}
.zs-workspace-role .auth-icon{width:14px;height:14px}
.zs-workspace-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.zs-workspace-card{padding:17px;border:1px solid #e7e2d9;border-radius:12px;background:#fff}
.zs-workspace-card-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:#f5eedf;color:#966b25;margin-bottom:12px}
.zs-workspace-card-icon .auth-icon{width:18px;height:18px}
.zs-workspace-card strong{display:block;font-size:12px;margin-bottom:5px}
.zs-workspace-card p{margin:0;color:#858990;font-size:10px;line-height:1.5}
.zs-workspace-empty{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:16px;align-items:center;padding:22px}
.zs-workspace-empty-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:13px;background:#f4eddf;color:#956b27}
.zs-workspace-empty-icon .auth-icon{width:24px;height:24px}
.zs-workspace-empty strong{display:block;font-size:13px}
.zs-workspace-empty p{margin:5px 0 0;color:#858990;font-size:10px;line-height:1.5;max-width:680px}

.zs-sidebar-backdrop{position:fixed;inset:0;background:rgba(21,24,29,.38);z-index:35}

@media(max-width:1020px){
  .zs-platform-shell{grid-template-columns:220px minmax(0,1fr)}
  .zs-security-list{grid-template-columns:1fr 1fr}
  .zs-account-grid{grid-template-columns:1fr}
}
@media(max-width:820px){
  .zs-platform-shell{display:block}
  .zs-platform-sidebar{position:fixed;left:0;top:0;width:246px;transform:translateX(-102%);transition:transform .18s ease;box-shadow:20px 0 48px rgba(24,26,30,.18)}
  .zs-platform-sidebar.is-open{transform:translateX(0)}
  .zs-sidebar-toggle{display:inline-flex}
  .zs-platform-content{width:min(100% - 28px,1240px);padding-top:26px}
  .zs-platform-topbar{padding:10px 14px;min-height:68px}
  .zs-profile-copy{display:none}.zs-profile-trigger{grid-template-columns:34px 14px;max-width:none}
  .zs-workspace-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .zs-platform-heading span{display:none}.zs-platform-heading h1{font-size:15px}
  .zs-platform-language{padding-left:8px}.zs-platform-language .auth-icon{display:none}
  .zs-page-intro{display:block;margin-bottom:18px}.zs-session-pill{margin-top:14px}
  .zs-page-intro h2{font-size:28px}.zs-page-intro p{font-size:12px}
  .zs-account-profile{grid-template-columns:48px minmax(0,1fr);padding:16px}.zs-account-avatar{width:48px;height:48px}.zs-account-badges{grid-column:1/-1;justify-content:flex-start}
  .zs-detail-grid{grid-template-columns:1fr}.zs-detail{border-right:0}.zs-detail:nth-last-child(-n+2){border-bottom:1px solid #eee9e0}.zs-detail:last-child{border-bottom:0}
  .zs-security-list{grid-template-columns:1fr}
  .zs-session-control{grid-template-columns:1fr}.zs-session-control form,.zs-session-control .auth-danger{width:100%}
  .zs-workspace-grid{grid-template-columns:1fr}.zs-workspace-hero{grid-template-columns:1fr}.zs-workspace-role{justify-self:start}
  .zs-workspace-empty{grid-template-columns:44px minmax(0,1fr)}.zs-workspace-empty-icon{width:44px;height:44px}.zs-workspace-empty .zs-action-link{grid-column:1/-1}
}
@media(prefers-reduced-motion:reduce){.zs-platform-sidebar,.zs-profile-dropdown,.zs-profile-caret{transition:none!important}}


/* auth.css — section 5 */
/* ZSOne Platform v0.2.7 — professional empty workspace dashboard. */

/* ---------- Sidebar project tool structure ---------- */
.zs-sidebar-section{padding:4px 0 14px;border-top:1px solid rgba(255,255,255,.07)}
.zs-sidebar-section-label{display:block;padding:15px 12px 8px;color:#767d88;font-size:8px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.zs-sidebar-nav--modules{padding:0;gap:3px}
.zs-sidebar-static{min-height:38px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 10px;border-radius:9px;color:#7f858f;font-size:11px;font-weight:700;cursor:default;user-select:none}
.zs-sidebar-static .zs-nav-icon{width:27px;height:27px;background:rgba(255,255,255,.035);color:#787f89}
.zs-sidebar-static .zs-nav-icon .auth-icon{width:15px;height:15px}
.zs-sidebar-static small{display:inline-flex;align-items:center;min-height:18px;padding:0 6px;border-radius:999px;background:rgba(224,185,104,.12);color:#c99b43;font-size:7px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.zs-sidebar-static.is-next{color:#bfc3ca;background:rgba(255,255,255,.025)}
.zs-sidebar-static.is-next .zs-nav-icon{color:#d4a64e;background:rgba(212,166,78,.1)}
.zs-sidebar-lock{width:12px;height:12px;color:#626974}

/* ---------- Top project context ---------- */
.zs-project-context{height:44px;min-width:190px;max-width:240px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:8px;padding:4px 10px 4px 6px;border:1px solid #e1ddd4;border-radius:11px;background:#f8f6f1;color:#30343a}
.zs-project-context-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:#efe8da;color:#9a6d22}
.zs-project-context-icon .auth-icon{width:16px;height:16px}
.zs-project-context small,.zs-project-context strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-project-context small{margin-bottom:2px;color:#92969d;font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.zs-project-context strong{font-size:10px;font-weight:800;color:#4b4f55}

/* ---------- Workspace welcome ---------- */
.zs-workspace-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;margin-bottom:14px;border:1px solid #e3ded4;border-radius:15px;background:linear-gradient(105deg,#fff 0%,#fff 72%,#fbf5e8 100%);box-shadow:0 8px 26px rgba(43,38,29,.035)}
.zs-workspace-eyebrow,.zs-section-kicker{display:inline-flex;align-items:center;gap:7px;color:#9a6d22;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.zs-workspace-eyebrow .auth-icon,.zs-section-kicker .auth-icon{width:14px;height:14px}
.zs-workspace-welcome h3{margin:7px 0 0;font-size:22px;line-height:1.16;letter-spacing:-.03em}
.zs-workspace-welcome p{margin:6px 0 0;color:#7b7f86;font-size:11px;line-height:1.5}
.zs-workspace-welcome p strong{color:#41454b;font-weight:750}
.zs-workspace-welcome-meta{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.zs-workspace-role,.zs-workspace-protected{min-height:32px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border-radius:999px;font-size:9px;font-weight:850;white-space:nowrap}
.zs-workspace-role{background:#f1e2be;color:#7e581c}
.zs-workspace-protected{background:#edf5ef;color:#397149}
.zs-workspace-role .auth-icon,.zs-workspace-protected .auth-icon{width:14px;height:14px}

/* ---------- Compact live-status tiles ---------- */
.zs-workspace-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.zs-status-tile{position:relative;min-height:72px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;border:1px solid #e5e1d8;border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(43,38,29,.025)}
.zs-status-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#f4f0e7;color:#906621}
.zs-status-icon .auth-icon{width:18px;height:18px}
.zs-status-tile small,.zs-status-tile strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-status-tile small{color:#94989f;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.zs-status-tile strong{margin-top:4px;color:#30343a;font-size:10px;font-weight:800}
.zs-status-tile.is-ready .zs-status-icon{background:#eaf4ed;color:#327144}
.zs-status-dot{width:7px;height:7px;border-radius:50%;background:#3f985d;box-shadow:0 0 0 4px #edf6f0}

/* ---------- Main workspace dashboard ---------- */
.zs-workspace-main-grid{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(300px,.82fr);gap:14px;align-items:start;margin-bottom:14px}
.zs-project-hub{overflow:hidden}
.zs-project-hub-head{align-items:center}
.zs-project-hub-head h3{margin-top:6px;font-size:17px;letter-spacing:-.025em}
.zs-project-state{min-height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border-radius:999px;background:#f6f1e7;color:#866024;font-size:8px;font-weight:850;white-space:nowrap}
.zs-project-state .auth-icon{width:13px;height:13px}
.zs-project-state.is-neutral{background:#f3f3f1;color:#777c84}
.zs-project-empty-stage{min-height:322px;display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;align-content:center;padding:36px 34px;background:linear-gradient(145deg,#fbfaf7,#f6f3eb);border-bottom:1px solid #eee9e0}
.zs-project-empty-mark{width:72px;height:72px;display:grid;place-items:center;border-radius:18px;background:#fff;border:1px solid #e5dfd2;color:#a1762e;box-shadow:0 10px 26px rgba(58,49,33,.06)}
.zs-project-empty-mark .auth-icon{width:32px;height:32px}
.zs-project-empty-copy{max-width:590px}
.zs-project-empty-copy strong{display:block;color:#272b31;font-size:16px;letter-spacing:-.015em}
.zs-project-empty-copy p{margin:7px 0 0;color:#7f838a;font-size:11px;line-height:1.62}
.zs-project-next-step{grid-column:2;display:inline-grid;justify-self:start;gap:3px;margin-top:4px;padding:9px 12px;border:1px solid #e8d8b5;border-radius:9px;background:#fff9ec}
.zs-project-next-step span{color:#9f7c42;font-size:7px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.zs-project-next-step strong{color:#674a1b;font-size:9px}
.zs-project-hub-foot{min-height:54px;display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;padding:11px 20px;background:#fff}
.zs-project-hub-foot span{display:inline-flex;align-items:center;gap:7px;color:#7d8188;font-size:9px;font-weight:650}
.zs-project-hub-foot .auth-icon{width:14px;height:14px;color:#9c7129}

.zs-workspace-side-stack{display:grid;gap:14px}
.zs-readiness-list{padding:8px 14px 14px}
.zs-readiness-row{min-height:61px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 5px;border-bottom:1px solid #eee9e0}
.zs-readiness-row:last-child{border-bottom:0}
.zs-readiness-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#f1eee8;color:#858a92}
.zs-readiness-icon .auth-icon{width:16px;height:16px}
.zs-readiness-row strong,.zs-readiness-row small{display:block}
.zs-readiness-row strong{color:#34383e;font-size:10px}
.zs-readiness-row small{margin-top:4px;color:#92969c;font-size:8px;line-height:1.35}
.zs-readiness-row em{font-style:normal;color:#83878e;font-size:7px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.zs-readiness-row.is-ready .zs-readiness-icon{background:#e9f3ec;color:#367448}
.zs-readiness-row.is-ready em{color:#367448}
.zs-readiness-row.is-next .zs-readiness-icon{background:#f5e9cc;color:#91651f}
.zs-readiness-row.is-next em{color:#91651f}

.zs-quick-access-list{padding:8px}
.zs-quick-access-list a{min-height:58px;display:grid;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;color:#32363c;text-decoration:none;transition:background .15s ease,transform .15s ease}
.zs-quick-access-list a:hover{background:#f7f4ed;transform:translateX(2px)}
.zs-quick-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid #e7e1d6;border-radius:10px;background:#fff;color:#976c27}
.zs-quick-icon .auth-icon{width:17px;height:17px}
.zs-quick-access-list strong,.zs-quick-access-list small{display:block}
.zs-quick-access-list strong{font-size:10px}
.zs-quick-access-list small{margin-top:4px;color:#969aa0;font-size:8px;line-height:1.3}
.zs-quick-access-list>a>.auth-icon{width:14px;height:14px;color:#9da1a8}

/* ---------- Project module map ---------- */
.zs-platform-modules{padding:22px 0 18px}
.zs-module-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:13px}
.zs-module-section-head h3{margin:6px 0 0;font-size:18px;letter-spacing:-.025em}
.zs-module-section-head p{margin:6px 0 0;color:#858990;font-size:10px;line-height:1.5}
.zs-module-security{min-height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border:1px solid #e5e1d8;border-radius:999px;background:#fff;color:#737880;font-size:8px;font-weight:800;white-space:nowrap}
.zs-module-security .auth-icon{width:13px;height:13px;color:#9b702a}
.zs-module-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}
.zs-module-card{min-height:142px;display:flex;flex-direction:column;padding:14px;border:1px solid #e5e1d8;border-radius:12px;background:#fff;color:#6f747c}
.zs-module-card.is-next{border-color:#e2c990;background:linear-gradient(150deg,#fff,#fff8e9)}
.zs-module-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}
.zs-module-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#f3f0e9;color:#8c9198}
.zs-module-icon .auth-icon{width:16px;height:16px}
.zs-module-card.is-next .zs-module-icon{background:#f1dfb5;color:#8a611e}
.zs-module-state{display:inline-flex;align-items:center;justify-content:center;min-width:20px;min-height:20px;color:#8d9299;font-size:7px;font-weight:900;text-transform:uppercase}
.zs-module-state .auth-icon{width:11px;height:11px}
.zs-module-card.is-next .zs-module-state{padding:0 6px;border-radius:999px;background:#f3e5c3;color:#89601f}
.zs-module-card>strong{color:#3d4147;font-size:10px;line-height:1.3}
.zs-module-card>p{margin:6px 0 0;color:#969aa1;font-size:8px;line-height:1.45}

/* ---------- Empty project activity ---------- */
.zs-project-activity{margin-top:0}
.zs-activity-empty{min-height:112px;display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;align-items:center;padding:20px}
.zs-activity-empty-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#f2efe9;color:#8d929a}
.zs-activity-empty-icon .auth-icon{width:20px;height:20px}
.zs-activity-empty strong{display:block;font-size:11px;color:#3b3f45}
.zs-activity-empty p{margin:5px 0 0;max-width:720px;color:#92969d;font-size:9px;line-height:1.55}

@media(max-width:1180px){
  .zs-workspace-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .zs-workspace-main-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr)}
  .zs-module-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .zs-project-context{display:none}
}
@media(max-width:900px){
  .zs-workspace-main-grid{grid-template-columns:1fr}
  .zs-workspace-side-stack{grid-template-columns:1fr 1fr}
  .zs-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .zs-sidebar-section{border-top:0}
  .zs-sidebar-nav--modules{padding-bottom:8px}
}
@media(max-width:680px){
  .zs-workspace-welcome{align-items:flex-start;flex-direction:column;padding:18px}
  .zs-workspace-welcome-meta{justify-content:flex-start}
  .zs-workspace-status-grid{grid-template-columns:1fr}
  .zs-workspace-main-grid{gap:12px}
  .zs-workspace-side-stack{grid-template-columns:1fr}
  .zs-project-empty-stage{min-height:280px;grid-template-columns:52px minmax(0,1fr);gap:13px;padding:26px 20px}
  .zs-project-empty-mark{width:52px;height:52px;border-radius:13px}.zs-project-empty-mark .auth-icon{width:24px;height:24px}
  .zs-project-next-step{grid-column:1/-1;margin-left:65px}
  .zs-project-hub-foot{display:grid;gap:8px;padding:12px 16px}
  .zs-module-section-head{align-items:flex-start;flex-direction:column}.zs-module-security{align-self:flex-start}
  .zs-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .zs-module-grid{grid-template-columns:1fr 1fr}
  .zs-module-card{min-height:132px;padding:12px}
  .zs-project-next-step{margin-left:0}
  .zs-project-empty-stage{grid-template-columns:1fr}
  .zs-project-empty-copy,.zs-project-next-step{grid-column:1}
  .zs-platform-actions{gap:6px}
}

.zs-platform-sidebar{overflow-y:auto;overflow-x:hidden}


/* auth.css — section 6 */
/* 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}
}


/* auth.css — section 7 */
/* ZSOne Platform v0.3.0 — company + membership foundation. Additive over v0.2.8. */

/* Company page */
.zs-company-alert{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;border-radius:11px;border:1px solid #e2ddd3;background:#fff;font-size:10px;font-weight:750;color:#4a4f55}
.zs-company-alert .auth-icon{width:16px;height:16px;flex:0 0 auto}
.zs-company-alert.is-success{border-color:#cfe3d5;background:#f3faf5;color:#2f7043}
.zs-company-alert.is-error{border-color:#ebd0cb;background:#fff6f4;color:#9d4339}

.zs-company-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:14px;padding:21px 23px;border:1px solid #e3ded4;border-radius:15px;background:linear-gradient(105deg,#fff 0%,#fff 74%,#fbf5e8 100%);box-shadow:0 8px 26px rgba(43,38,29,.035)}
.zs-company-hero h3{margin:7px 0 0;font-size:22px;line-height:1.16;letter-spacing:-.03em;color:#272b31}
.zs-company-hero p{max-width:760px;margin:7px 0 0;color:#7d8289;font-size:11px;line-height:1.6}
.zs-company-current-pill{min-width:220px;max-width:320px;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:9px 12px;border:1px solid #dfd4bc;border-radius:12px;background:#fffaf0;color:#76551d}
.zs-company-current-pill>span{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#f1dfb4;color:#805b1d}
.zs-company-current-pill .auth-icon{width:16px;height:16px}
.zs-company-current-pill small,.zs-company-current-pill strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-company-current-pill small{font-size:7px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:#9f7e48}
.zs-company-current-pill strong{margin-top:3px;font-size:10px;color:#594019}

.zs-company-schema-warning{min-height:190px;display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;align-items:center;padding:28px}
.zs-company-warning-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:14px;background:#fff1d3;color:#8b621d}
.zs-company-warning-icon .auth-icon{width:25px;height:25px}
.zs-company-schema-warning h3{margin:0;color:#33373d;font-size:17px;letter-spacing:-.02em}
.zs-company-schema-warning p{max-width:720px;margin:7px 0 0;color:#7e838a;font-size:10px;line-height:1.6}

.zs-company-onboarding-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.72fr);gap:14px;align-items:stretch}
.zs-company-empty{min-height:390px;display:grid;align-content:center;justify-items:start;padding:34px;background:linear-gradient(145deg,#fff,#f9f6ef)}
.zs-company-empty-icon{width:72px;height:72px;display:grid;place-items:center;margin-bottom:20px;border:1px solid #e5dfd2;border-radius:18px;background:#fff;color:#a1762e;box-shadow:0 10px 26px rgba(58,49,33,.06)}
.zs-company-empty-icon .auth-icon{width:32px;height:32px}
.zs-company-empty h3{margin:0;font-size:22px;letter-spacing:-.035em;color:#282c32}
.zs-company-empty p{max-width:660px;margin:8px 0 0;color:#7e838a;font-size:11px;line-height:1.62}
.zs-company-foundation-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.zs-company-foundation-list span{min-height:32px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border:1px solid #e6dfd2;border-radius:999px;background:#fff;color:#666b72;font-size:8px;font-weight:800}
.zs-company-foundation-list .auth-icon{width:13px;height:13px;color:#966a25}

.zs-company-create-card{overflow:hidden}
.zs-company-form{display:grid;gap:13px;padding:18px}
.zs-company-form label{display:grid;gap:6px;color:#50555c;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
.zs-company-form label small{color:#a2a5aa;font-size:7px;font-weight:700;text-transform:none;letter-spacing:0}
.zs-company-form input{width:100%;height:44px;padding:0 12px;border:1px solid #ddd7cb;border-radius:10px;background:#fff;color:#2f343a;font:inherit;font-size:11px;outline:0;transition:border-color .16s ease,box-shadow .16s ease}
.zs-company-form input:focus{border-color:#c7a258;box-shadow:0 0 0 3px rgba(199,162,88,.14)}
.zs-company-primary{height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;background:#20252b;color:#fff;font-size:10px;font-weight:850;cursor:pointer;transition:background .16s ease,transform .16s ease}
.zs-company-primary:hover{background:#30363e;transform:translateY(-1px)}
.zs-company-primary .auth-icon{width:15px;height:15px;color:#e0b557}

.zs-company-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);gap:14px;align-items:start}
.zs-company-main-stack,.zs-company-side-stack{display:grid;gap:14px}
.zs-company-profile-card{overflow:hidden}
.zs-company-profile-head{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:15px;padding:21px 22px;border-bottom:1px solid #ece7de;background:linear-gradient(110deg,#fff,#fff 74%,#fbf5e8)}
.zs-company-logo-placeholder{width:56px;height:56px;display:grid;place-items:center;border:1px solid #e5dfd2;border-radius:14px;background:#fff;color:#996d27;box-shadow:0 8px 18px rgba(43,38,29,.05)}
.zs-company-logo-placeholder .auth-icon{width:25px;height:25px}
.zs-company-profile-copy{min-width:0}
.zs-company-profile-copy h3{margin:5px 0 0;overflow-wrap:anywhere;color:#292d33;font-size:21px;line-height:1.15;letter-spacing:-.03em}
.zs-company-profile-copy p{margin:5px 0 0;color:#83878e;font-size:9px;line-height:1.45}
.zs-company-active-badge{min-height:29px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border-radius:999px;background:#eaf4ed;color:#337147;font-size:8px;font-weight:850;white-space:nowrap}
.zs-company-active-badge .auth-icon{width:13px;height:13px}
.zs-company-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.zs-company-detail-grid>div{min-width:0;padding:16px 18px;border-right:1px solid #eee9e0}
.zs-company-detail-grid>div:last-child{border-right:0}
.zs-company-detail-grid small,.zs-company-detail-grid strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-company-detail-grid small{color:#989ca2;font-size:7px;font-weight:850;letter-spacing:.065em;text-transform:uppercase}
.zs-company-detail-grid strong{margin-top:5px;color:#3a3f45;font-size:10px}

.zs-company-count{min-width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:#f2ead7;color:#7e591f;font-size:9px;font-weight:900}
.zs-company-members-list{padding:4px 14px 14px}
.zs-company-member-row{min-height:64px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:9px 4px;border-bottom:1px solid #eee9e0}
.zs-company-member-row:last-child{border-bottom:0}
.zs-company-member-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#f2eee5;color:#8d6422}
.zs-company-member-avatar .auth-icon{width:17px;height:17px}
.zs-company-member-person{min-width:0}
.zs-company-member-person strong,.zs-company-member-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-company-member-person strong{color:#363a40;font-size:10px}
.zs-company-member-person small{margin-top:4px;color:#95999f;font-size:8px}
.zs-company-member-role{min-height:27px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#f5ead1;color:#7d581c;font-size:8px;font-weight:850;white-space:nowrap}

.zs-company-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:16px}
.zs-company-capability{min-height:48px;display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #e8e4dc;border-radius:10px;background:#f7f6f3;color:#999da3;font-size:9px;font-weight:750}
.zs-company-capability .auth-icon{width:15px;height:15px;flex:0 0 auto}
.zs-company-capability.is-enabled{border-color:#d6e5da;background:#f3f9f5;color:#3d724b}

.zs-company-list{padding:8px}
.zs-company-list-item{min-height:62px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;border:1px solid transparent;border-radius:10px;background:transparent}
.zs-company-list-item+ .zs-company-list-item{margin-top:4px}
.zs-company-list-item.is-selected{border-color:#e2d4b7;background:#fff9ec}
.zs-company-list-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#f2eee5;color:#8d6422}
.zs-company-list-icon .auth-icon{width:17px;height:17px}
.zs-company-list-copy{min-width:0}
.zs-company-list-copy strong,.zs-company-list-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-company-list-copy strong{font-size:9px;color:#3c4147}
.zs-company-list-copy small{margin-top:4px;color:#969aa0;font-size:7px}
.zs-company-list-item button{min-height:28px;padding:0 8px;border:1px solid #ddd6c8;border-radius:8px;background:#fff;color:#585d64;font-size:7px;font-weight:850;cursor:pointer}
.zs-company-selected{display:inline-flex;align-items:center;gap:5px;color:#8a611f;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.zs-company-selected .auth-icon{width:12px;height:12px}

.zs-company-next-card{padding:20px;background:linear-gradient(145deg,#fff,#fbf6ea)}
.zs-company-next-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#f0ddb3;color:#825b1c}
.zs-company-next-icon .auth-icon{width:19px;height:19px}
.zs-company-next-card h3{margin:14px 0 0;color:#30343a;font-size:15px;letter-spacing:-.02em}
.zs-company-next-card p{margin:7px 0 0;color:#858990;font-size:9px;line-height:1.55}
.zs-company-version{display:inline-flex;margin-top:15px;padding:5px 7px;border-radius:999px;background:#262b31;color:#e2b85c;font-size:7px;font-weight:900;letter-spacing:.06em}

.zs-company-create-more{overflow:hidden}
.zs-company-create-more summary{min-height:54px;display:grid;grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:10px;padding:0 15px;color:#4a4f56;font-size:9px;font-weight:850;cursor:pointer;list-style:none}
.zs-company-create-more summary::-webkit-details-marker{display:none}
.zs-company-create-more summary>.auth-icon:first-child{color:#956a25}
.zs-company-create-more summary>.auth-icon{width:15px;height:15px}
.zs-company-create-more[open] summary{border-bottom:1px solid #ece7de;background:#fbf9f4}

/* Workspace integration once a company exists */
.zs-project-empty-stage.has-company{background:linear-gradient(145deg,#fbfaf7,#f8f4eb)}
.zs-workspace-company-link{grid-column:2;display:inline-grid;grid-template-columns:16px auto 14px;align-items:center;gap:7px;justify-self:start;margin-top:2px;padding:8px 10px;border:1px solid #dfd4bc;border-radius:9px;background:#fff;color:#77531b;text-decoration:none;font-size:8px;font-weight:850}
.zs-workspace-company-link .auth-icon{width:14px;height:14px}
.zs-workspace-company-link:hover{background:#fffaf0}

@media(max-width:1080px){
  .zs-company-layout{grid-template-columns:minmax(0,1.35fr) minmax(280px,.7fr)}
  .zs-company-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .zs-company-detail-grid>div:nth-child(2){border-right:0}
  .zs-company-detail-grid>div:nth-child(-n+2){border-bottom:1px solid #eee9e0}
  .zs-company-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .zs-company-onboarding-grid,.zs-company-layout{grid-template-columns:1fr}
  .zs-company-side-stack{grid-template-columns:1fr 1fr}
  .zs-company-create-more{grid-column:1/-1}
}
@media(max-width:680px){
  .zs-company-hero{align-items:flex-start;flex-direction:column;padding:18px}
  .zs-company-current-pill{width:100%;max-width:none}
  .zs-company-onboarding-grid{gap:12px}
  .zs-company-empty{min-height:320px;padding:24px 20px}
  .zs-company-layout{gap:12px}
  .zs-company-side-stack{grid-template-columns:1fr}
  .zs-company-profile-head{grid-template-columns:48px minmax(0,1fr);padding:18px 16px}
  .zs-company-logo-placeholder{width:48px;height:48px;border-radius:12px}
  .zs-company-active-badge{grid-column:1/-1;justify-self:start}
  .zs-company-detail-grid{grid-template-columns:1fr 1fr}
  .zs-company-detail-grid>div{padding:13px 14px}
  .zs-company-capability-grid{grid-template-columns:1fr;padding:13px}
  .zs-workspace-company-link{grid-column:1/-1;margin-left:65px}
}
@media(max-width:430px){
  .zs-company-hero h3{font-size:19px}
  .zs-company-empty h3{font-size:19px}
  .zs-company-empty-icon{width:58px;height:58px;border-radius:15px}
  .zs-company-detail-grid{grid-template-columns:1fr}
  .zs-company-detail-grid>div{border-right:0!important;border-bottom:1px solid #eee9e0}
  .zs-company-detail-grid>div:last-child{border-bottom:0}
  .zs-company-member-row{grid-template-columns:36px minmax(0,1fr)}
  .zs-company-member-role{grid-column:2;justify-self:start}
  .zs-company-list-item{grid-template-columns:34px minmax(0,1fr)}
  .zs-company-list-item button,.zs-company-selected{grid-column:2;justify-self:start}
  .zs-workspace-company-link{margin-left:0}
}


/* auth.css — section 8 */
/* ZSOne Platform v0.3.1 — real project foundation. Additive over v0.3.0. */

.zs-project-context{text-decoration:none;color:inherit}
.zs-project-context:hover{border-color:#d9c9a7;background:#fffaf0}
.zs-module-card.is-ready{text-decoration:none;cursor:pointer;border-color:#d7e5db;background:linear-gradient(145deg,#fff,#f5faf6)}
.zs-module-card.is-ready:hover{border-color:#bfd5c5;box-shadow:0 10px 25px rgba(52,85,62,.07);transform:translateY(-1px)}
.zs-module-card.is-ready .zs-module-state{color:#39714a;background:#e8f3eb}

/* Project center */
.zs-project-alert{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;border:1px solid #e2ddd3;border-radius:11px;background:#fff;color:#4a4f55;font-size:10px;font-weight:750}
.zs-project-alert .auth-icon{width:16px;height:16px;flex:0 0 auto}
.zs-project-alert.is-success{border-color:#cfe3d5;background:#f3faf5;color:#2f7043}
.zs-project-alert.is-error{border-color:#ebd0cb;background:#fff6f4;color:#9d4339}

.zs-projects-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:14px;padding:21px 23px;border:1px solid #e3ded4;border-radius:15px;background:linear-gradient(105deg,#fff 0%,#fff 72%,#fbf5e8 100%);box-shadow:0 8px 26px rgba(43,38,29,.035)}
.zs-projects-hero h3{margin:7px 0 0;color:#272b31;font-size:22px;line-height:1.16;letter-spacing:-.03em}
.zs-projects-hero p{max-width:760px;margin:7px 0 0;color:#7d8289;font-size:11px;line-height:1.6}
.zs-projects-company-pill{min-width:220px;max-width:330px;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;padding:9px 12px;border:1px solid #dfd4bc;border-radius:12px;background:#fffaf0;color:#76551d}
.zs-projects-company-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:#f1dfb4;color:#805b1d}
.zs-projects-company-icon .auth-icon{width:17px;height:17px}
.zs-projects-company-pill small,.zs-projects-company-pill strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-projects-company-pill small{font-size:7px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:#9f7e48}
.zs-projects-company-pill strong{margin-top:3px;font-size:10px;color:#594019}

.zs-project-schema-warning,.zs-project-no-company{min-height:210px;display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:18px;padding:28px}
.zs-project-schema-icon,.zs-project-empty-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:14px;background:#fff1d3;color:#8b621d}
.zs-project-schema-icon .auth-icon,.zs-project-empty-icon .auth-icon{width:26px;height:26px}
.zs-project-schema-warning h3,.zs-project-no-company h3{margin:0;color:#33373d;font-size:17px;letter-spacing:-.02em}
.zs-project-schema-warning p,.zs-project-no-company p{max-width:720px;margin:7px 0 0;color:#7e838a;font-size:10px;line-height:1.6}
.zs-project-no-company>a{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #ded5c4;border-radius:9px;background:#fff;color:#74531d;text-decoration:none;font-size:8px;font-weight:850;white-space:nowrap}
.zs-project-no-company>a .auth-icon{width:14px;height:14px}

.zs-projects-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.72fr);gap:14px;align-items:start}
.zs-projects-main-stack,.zs-projects-side-stack{display:grid;gap:14px}
.zs-projects-list-panel{overflow:hidden}
.zs-projects-list-head{align-items:center}
.zs-projects-count{min-width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#f2ead7;color:#7e591f;font-size:9px;font-weight:900}
.zs-projects-empty{min-height:320px;display:flex;align-items:center;justify-content:center;gap:18px;padding:32px;text-align:left;background:linear-gradient(145deg,#fff,#fbfaf7)}
.zs-projects-empty>span{width:64px;height:64px;display:grid;place-items:center;border:1px solid #e4ddd0;border-radius:16px;background:#fff;color:#956922;box-shadow:0 8px 22px rgba(43,38,29,.05)}
.zs-projects-empty>span .auth-icon{width:28px;height:28px}
.zs-projects-empty strong{display:block;color:#30343a;font-size:16px;letter-spacing:-.02em}
.zs-projects-empty p{max-width:550px;margin:7px 0 0;color:#858990;font-size:10px;line-height:1.58}

.zs-project-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:14px}
.zs-project-card{min-width:0;display:flex;flex-direction:column;border:1px solid #e6e1d8;border-radius:13px;background:#fff;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.zs-project-card:hover{border-color:#d9d0bf;box-shadow:0 10px 28px rgba(48,43,34,.055);transform:translateY(-1px)}
.zs-project-card.is-selected{border-color:#d9c59d;box-shadow:0 0 0 2px rgba(208,173,99,.09),0 11px 28px rgba(48,43,34,.055)}
.zs-project-card-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:15px 15px 12px;border-bottom:1px solid #eee9e1;background:linear-gradient(120deg,#fff,#fff 70%,#fbf7ee)}
.zs-project-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#f1eadb;color:#8c6422}
.zs-project-card-icon .auth-icon{width:19px;height:19px}
.zs-project-card-title{min-width:0}
.zs-project-card-title small,.zs-project-card-title h4{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-project-card-title small{color:#9a7b46;font-size:7px;font-weight:900;letter-spacing:.075em;text-transform:uppercase}
.zs-project-card-title h4{margin:4px 0 0;color:#30343a;font-size:13px;letter-spacing:-.02em}
.zs-project-status{min-height:26px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#f2f0eb;color:#696e74;font-size:7px;font-weight:900;white-space:nowrap}
.zs-project-status.is-active{background:#e8f3eb;color:#337147}
.zs-project-status.is-planning{background:#f5ecd7;color:#815b1e}
.zs-project-status.is-on_hold{background:#fff0df;color:#9a5d22}
.zs-project-status.is-completed{background:#e9eff7;color:#46627f}
.zs-project-description{min-height:67px;margin:0;padding:13px 15px;color:#7d8289;font-size:9px;line-height:1.58;overflow-wrap:anywhere}
.zs-project-meta-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eee9e1}
.zs-project-meta-grid>div{min-width:0;padding:11px 14px}
.zs-project-meta-grid>div+div{border-left:1px solid #eee9e1}
.zs-project-meta-grid small,.zs-project-meta-grid strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-project-meta-grid small{color:#a0a3a8;font-size:6.5px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
.zs-project-meta-grid strong{margin-top:4px;color:#50555c;font-size:8px}
.zs-project-card-actions{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:auto;padding:8px 12px;border-top:1px solid #eee9e1;background:#fbfaf7}
.zs-project-card-actions button{font:inherit;cursor:pointer}
.zs-project-select,.zs-project-open-workspace{min-height:31px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border-radius:8px;font-size:7.5px;font-weight:900}
.zs-project-select{border:1px solid #d8cfbf;background:#fff;color:#5e6268}
.zs-project-open-workspace{margin-left:auto;border:0;background:#252a30;color:#fff}
.zs-project-select .auth-icon,.zs-project-open-workspace .auth-icon{width:13px;height:13px}
.zs-project-open-workspace .auth-icon{color:#dfb457}
.zs-project-selected{display:inline-flex;align-items:center;gap:5px;color:#7d591f;font-size:7.5px;font-weight:900;text-transform:uppercase;letter-spacing:.045em}
.zs-project-selected .auth-icon{width:13px;height:13px}

.zs-project-create-panel{overflow:hidden}
.zs-project-form{display:grid;gap:12px;padding:16px}
.zs-project-form label{display:grid;gap:6px;color:#50555c;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
.zs-project-form label small{color:#a2a5aa;font-size:7px;font-weight:700;text-transform:none;letter-spacing:0}
.zs-project-form input,.zs-project-form textarea,.zs-project-form select{width:100%;border:1px solid #ddd7cb;border-radius:10px;background:#fff;color:#2f343a;font:inherit;font-size:10px;outline:0;transition:border-color .16s ease,box-shadow .16s ease}
.zs-project-form input,.zs-project-form select{height:42px;padding:0 11px}
.zs-project-form textarea{min-height:84px;padding:10px 11px;resize:vertical;line-height:1.5}
.zs-project-form input:focus,.zs-project-form textarea:focus,.zs-project-form select:focus{border-color:#c7a258;box-shadow:0 0 0 3px rgba(199,162,88,.14)}
.zs-project-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.zs-project-primary{height:43px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;background:#20252b;color:#fff;font-size:9px;font-weight:850;cursor:pointer;transition:background .16s ease,transform .16s ease}
.zs-project-primary:hover{background:#30363e;transform:translateY(-1px)}
.zs-project-primary .auth-icon{width:15px;height:15px;color:#e0b557}

.zs-project-boundary-panel,.zs-project-next-panel{padding:19px}
.zs-project-boundary-icon,.zs-project-next-panel>span{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#f0ddb3;color:#825b1c}
.zs-project-boundary-icon .auth-icon,.zs-project-next-panel>span .auth-icon{width:19px;height:19px}
.zs-project-boundary-panel h3,.zs-project-next-panel h3{margin:13px 0 0;color:#30343a;font-size:14px;letter-spacing:-.02em}
.zs-project-boundary-panel p,.zs-project-next-panel p{margin:7px 0 0;color:#858990;font-size:9px;line-height:1.55}
.zs-project-boundary-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px;padding-top:12px;border-top:1px solid #ebe5db}
.zs-project-boundary-row small{color:#999da2;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.zs-project-boundary-row strong{color:#555a61;font-size:9px}
.zs-project-next-panel{background:linear-gradient(145deg,#fff,#fbf6ea)}
.zs-project-next-panel em{display:inline-flex;margin-top:14px;padding:5px 7px;border-radius:999px;background:#262b31;color:#e2b85c;font-size:7px;font-weight:900;font-style:normal;letter-spacing:.06em}

/* Company integration */
.zs-company-project-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:13px;border-top:1px solid #e9e1d3}
.zs-company-project-summary small,.zs-company-project-summary strong{display:block}
.zs-company-project-summary small{color:#9b9ea3;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.zs-company-project-summary strong{margin-top:3px;color:#393e44;font-size:14px}
.zs-company-project-summary a{display:inline-flex;align-items:center;gap:6px;padding:8px 9px;border:1px solid #ded3bf;border-radius:8px;background:#fff;color:#76531b;text-decoration:none;font-size:7.5px;font-weight:850}
.zs-company-project-summary a .auth-icon{width:13px;height:13px}

/* Workspace real project context */
.zs-workspace-project-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;padding:18px;background:linear-gradient(145deg,#fbfaf7,#f8f4eb)}
.zs-workspace-project-main{grid-column:1/-1;display:grid;grid-template-columns:56px minmax(0,1fr);align-items:start;gap:14px}
.zs-workspace-project-mark{width:56px;height:56px;display:grid;place-items:center;border:1px solid #e2d8c5;border-radius:14px;background:#fff;color:#8c6422}
.zs-workspace-project-mark .auth-icon{width:25px;height:25px}
.zs-workspace-project-main small{display:block;color:#997541;font-size:7px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.zs-workspace-project-main strong{display:block;margin-top:4px;color:#2f343a;font-size:20px;line-height:1.16;letter-spacing:-.025em}
.zs-workspace-project-main p{max-width:720px;margin:7px 0 0;color:#7d8289;font-size:9px;line-height:1.55}
.zs-workspace-project-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #e3ddd2;border-radius:11px;background:#fff;overflow:hidden}
.zs-workspace-project-facts>div{min-width:0;padding:11px 12px;border-right:1px solid #ece7df}
.zs-workspace-project-facts>div:last-child{border-right:0}
.zs-workspace-project-facts small,.zs-workspace-project-facts strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zs-workspace-project-facts small{color:#9ca0a5;font-size:6.5px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.zs-workspace-project-facts strong{margin-top:4px;color:#4d5259;font-size:8.5px}
.zs-workspace-project-open{grid-column:1/-1;justify-self:start;display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #dcd2c0;border-radius:9px;background:#fff;color:#75531c;text-decoration:none;font-size:8px;font-weight:850}
.zs-workspace-project-open .auth-icon{width:14px;height:14px}
.zs-project-state.is-ready{background:#eaf4ed;color:#337147;border-color:#d3e6d8}

@media(max-width:1180px){
  .zs-project-card-grid{grid-template-columns:1fr}
  .zs-projects-layout{grid-template-columns:minmax(0,1.4fr) minmax(300px,.72fr)}
}
@media(max-width:930px){
  .zs-projects-layout{grid-template-columns:1fr}
  .zs-projects-side-stack{grid-template-columns:1fr 1fr}
  .zs-project-create-panel{grid-column:1/-1}
}
@media(max-width:720px){
  .zs-projects-hero{align-items:flex-start;flex-direction:column;padding:18px}
  .zs-projects-company-pill{width:100%;max-width:none}
  .zs-project-schema-warning,.zs-project-no-company{grid-template-columns:50px minmax(0,1fr);padding:21px}
  .zs-project-no-company>a{grid-column:1/-1;justify-self:start;margin-left:68px}
  .zs-projects-side-stack{grid-template-columns:1fr}
  .zs-project-card-grid{padding:11px}
  .zs-workspace-project-facts{grid-template-columns:1fr 1fr}
  .zs-workspace-project-facts>div:nth-child(2){border-right:0}
  .zs-workspace-project-facts>div:nth-child(-n+2){border-bottom:1px solid #ece7df}
}
@media(max-width:500px){
  .zs-projects-hero h3{font-size:19px}
  .zs-projects-empty{min-height:260px;align-items:flex-start;flex-direction:column;padding:24px 18px}
  .zs-project-card-head{grid-template-columns:38px minmax(0,1fr);padding:13px}
  .zs-project-card-icon{width:38px;height:38px}
  .zs-project-status{grid-column:2;justify-self:start}
  .zs-project-description{min-height:auto;padding:12px 13px}
  .zs-project-meta-grid{grid-template-columns:1fr}
  .zs-project-meta-grid>div+div{border-left:0;border-top:1px solid #eee9e1}
  .zs-project-card-actions{align-items:flex-start;flex-direction:column}
  .zs-project-open-workspace{margin-left:0;width:100%}
  .zs-project-date-grid{grid-template-columns:1fr}
  .zs-project-schema-warning,.zs-project-no-company{grid-template-columns:1fr}
  .zs-project-no-company>a{margin-left:0}
  .zs-workspace-project-main{grid-template-columns:46px minmax(0,1fr)}
  .zs-workspace-project-mark{width:46px;height:46px}
  .zs-workspace-project-main strong{font-size:17px}
  .zs-workspace-project-facts{grid-template-columns:1fr}
  .zs-workspace-project-facts>div{border-right:0;border-bottom:1px solid #ece7df}
  .zs-workspace-project-facts>div:last-child{border-bottom:0}
}

/* Keep the newly active Projects item aligned with locked project-module rows. */
.zs-sidebar-nav--modules a{min-height:38px;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:0 10px;border-radius:9px;font-size:11px;font-weight:750}
.zs-sidebar-nav--modules a .zs-nav-icon{width:27px;height:27px}
.zs-sidebar-nav--modules a .zs-nav-icon .auth-icon{width:15px;height:15px}
.zs-sidebar-nav--modules a.is-active{background:rgba(240,217,159,.95);color:#24272d}


/* auth.css — section 9 */
/* ZSOne Platform v0.3.2 — membership/invitation UI additions. */
.zs-membership-schema-warning{display:flex;gap:16px;align-items:flex-start;padding:20px;border:1px solid #e8dcc3;background:#fffaf0}.zs-membership-schema-warning>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#f5ead1;color:#8b6a22;flex:0 0 auto}.zs-membership-schema-warning .auth-icon{width:21px;height:21px}.zs-membership-schema-warning h3,.zs-membership-schema-warning strong{margin:0 0 5px;color:#22252a}.zs-membership-schema-warning p{margin:0;color:#70747b;line-height:1.55}.zs-membership-schema-warning--inline{margin-top:8px;border-radius:14px}
.zs-invite-card{overflow:hidden}.zs-invite-head-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#f4ebd8;color:#977126}.zs-invite-head-icon .auth-icon{width:21px;height:21px}.zs-invite-form{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(150px,.72fr) minmax(190px,1fr) minmax(150px,.72fr);gap:14px;align-items:end}.zs-invite-form label{display:grid;gap:7px;color:#54575d;font-size:12px;font-weight:700}.zs-invite-form label span{min-height:17px}.zs-invite-form input,.zs-invite-form select{width:100%;min-height:44px;border:1px solid #d9d8d3;border-radius:10px;background:#fff;color:#23262b;padding:0 12px;font:inherit;outline:none}.zs-invite-form input:focus,.zs-invite-form select:focus{border-color:#b58b35;box-shadow:0 0 0 3px rgba(181,139,53,.12)}.zs-invite-form .zs-company-primary{min-height:44px;justify-content:center;margin:0;white-space:nowrap}
.zs-invite-link-box{margin:0 0 18px;padding:16px;border:1px solid #d9c694;border-radius:14px;background:#fffbf1}.zs-invite-link-box>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.zs-invite-link-box strong{font-size:14px;color:#2a2d31}.zs-invite-link-box small{color:#77716a}.zs-invite-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.zs-invite-link-row input{min-width:0;height:42px;border:1px solid #dfd6c3;border-radius:9px;background:#fff;padding:0 11px;color:#52545a;font-size:12px}.zs-invite-link-row button{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:42px;padding:0 14px;border:0;border-radius:9px;background:#25282d;color:#fff;font-weight:750;cursor:pointer}.zs-invite-link-row .auth-icon{width:16px;height:16px}.zs-invite-link-box p{margin:9px 0 0;color:#7a756d;font-size:11px;line-height:1.45}
.zs-company-members-list--managed{gap:8px}.zs-company-member-row--managed{grid-template-columns:40px minmax(150px,1fr) minmax(220px,auto) auto;gap:12px;align-items:center}.zs-member-role-form{display:flex;align-items:center;gap:7px}.zs-member-role-form select{height:36px;min-width:120px;border:1px solid #deddd8;border-radius:8px;background:#fff;padding:0 9px;color:#33373c}.zs-member-role-form button,.zs-member-remove-form button{height:36px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;font-size:12px;font-weight:750;cursor:pointer}.zs-member-role-form button{border:1px solid #d8c28c;background:#fff8e8;color:#725418}.zs-member-remove-form button{border:1px solid #ead0ca;background:#fff7f5;color:#9a493b}.zs-member-role-form .auth-icon,.zs-member-remove-form .auth-icon{width:14px;height:14px}
.zs-invitation-list-card{overflow:hidden}.zs-invite-empty{display:flex;align-items:center;gap:14px;padding:18px 4px;color:#6b6e74}.zs-invite-empty>.auth-icon{width:28px;height:28px;color:#a68034}.zs-invite-empty strong{display:block;color:#34373c;margin-bottom:3px}.zs-invite-empty p{margin:0;font-size:12px}.zs-invite-list{display:grid;gap:8px}.zs-invite-row{display:grid;grid-template-columns:36px minmax(140px,1fr) auto auto;gap:11px;align-items:center;padding:11px 12px;border:1px solid #eceae4;border-radius:12px;background:#fff}.zs-invite-row-icon{width:34px;height:34px;border-radius:9px;background:#f7f2e7;color:#9b7529;display:grid;place-items:center}.zs-invite-row-icon .auth-icon{width:17px;height:17px}.zs-invite-row-copy{min-width:0}.zs-invite-row-copy strong,.zs-invite-row-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zs-invite-row-copy strong{font-size:13px;color:#2f3237}.zs-invite-row-copy small{margin-top:3px;font-size:11px;color:#7a7d82}.zs-invite-status{display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.02em;background:#f2f2f1;color:#65686e}.zs-invite-status.is-pending{background:#fff4d9;color:#82631f}.zs-invite-status.is-accepted{background:#eaf6ee;color:#39734a}.zs-invite-status.is-expired,.zs-invite-status.is-revoked{background:#f4efee;color:#8a5f56}.zs-invite-revoke{height:32px;border:1px solid #ead7d2;border-radius:8px;background:#fff8f6;color:#9a493b;display:inline-flex;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:750;cursor:pointer}.zs-invite-revoke .auth-icon{width:13px;height:13px}
.zs-project-members-panel{overflow:hidden}.zs-project-member-list{display:grid;gap:8px}.zs-project-member-row{display:grid;grid-template-columns:38px minmax(150px,1fr) minmax(200px,auto) auto;gap:11px;align-items:center;padding:11px 12px;border:1px solid #eceae5;border-radius:12px;background:#fafafa}.zs-project-member-row.has-access{background:#fff}.zs-project-member-avatar{width:36px;height:36px;border-radius:10px;background:#f3efe6;color:#87661f;display:grid;place-items:center}.zs-project-member-avatar .auth-icon{width:18px;height:18px}.zs-project-member-person{min-width:0}.zs-project-member-person strong,.zs-project-member-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zs-project-member-person strong{font-size:13px;color:#2e3136}.zs-project-member-person small{margin-top:3px;font-size:11px;color:#777a80}.zs-project-member-control{display:flex;align-items:center;gap:7px}.zs-project-member-control select{height:34px;border:1px solid #dcdbd6;border-radius:8px;background:#fff;padding:0 8px;color:#33373c}.zs-project-member-control button,.zs-project-member-remove button{height:34px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:750;cursor:pointer}.zs-project-member-control button{border:1px solid #d9c18c;background:#fff8e8;color:#725418}.zs-project-member-remove button{border:1px solid #ead4ce;background:#fff7f5;color:#9a493b}.zs-project-member-control .auth-icon,.zs-project-member-remove .auth-icon{width:13px;height:13px}.zs-project-access-badge{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border-radius:999px;font-size:10px;font-weight:800;background:#f0f1f2;color:#62666c}.zs-project-access-badge .auth-icon{width:13px;height:13px}.zs-project-access-badge.is-inherited{background:#eef3fa;color:#48678e}.zs-project-access-badge.is-active{background:#eaf6ee;color:#39734a}.zs-project-access-badge.is-none{background:#f3f3f2;color:#787b80}
/* Public invitation page */
.auth-invitation-page .auth-card{max-width:620px}.zs-public-invite-state{display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid #e7e3da;border-radius:14px;background:#faf9f6}.zs-public-invite-state>.auth-icon{width:25px;height:25px;flex:0 0 auto}.zs-public-invite-state h2,.zs-public-invite-state h3{margin:0 0 6px;color:#282b30}.zs-public-invite-state p{margin:0;color:#70747b;line-height:1.55}.zs-public-invite-state.is-error{background:#fff7f5;border-color:#efd8d2;color:#9b4c3d}.zs-public-invite-state.is-success{background:#eff8f2;border-color:#d6e9dc;color:#3f7750}.zs-public-invite-state.compact{margin-top:18px}.zs-public-invite-summary{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid #e7dfce;border-radius:14px;background:#fffaf0}.zs-public-invite-company{width:46px;height:46px;border-radius:12px;background:#efe2c5;color:#8c6820;display:grid;place-items:center}.zs-public-invite-company .auth-icon{width:23px;height:23px}.zs-public-invite-summary small,.zs-public-invite-summary p{display:block;margin:0;color:#777a80}.zs-public-invite-summary h2{margin:3px 0;font-size:20px;color:#24272c}.zs-public-invite-summary p{font-size:12px}.zs-public-invite-role{padding:6px 9px;border-radius:999px;background:#282b30;color:#fff;font-size:10px;font-weight:800}.zs-public-invite-project{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:11px;align-items:center;margin-top:10px;padding:12px 14px;border:1px solid #eae8e1;border-radius:12px}.zs-public-invite-project>.auth-icon{width:20px;height:20px;color:#9b762a}.zs-public-invite-project small,.zs-public-invite-project strong{display:block}.zs-public-invite-project small{color:#85878c;font-size:10px}.zs-public-invite-project strong{margin-top:2px;color:#33363b;font-size:12px}.zs-public-invite-project>span{font-size:10px;font-weight:800;color:#6b5525;background:#fff4d9;padding:5px 8px;border-radius:999px}.zs-public-invite-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.zs-public-invite-meta>span{display:grid;grid-template-columns:28px 1fr;column-gap:8px;align-items:center;padding:10px 12px;border-radius:10px;background:#f7f7f5}.zs-public-invite-meta .auth-icon{grid-row:1/3;width:17px;height:17px;color:#787b81}.zs-public-invite-meta small{font-size:9px;color:#8a8c91}.zs-public-invite-meta strong{font-size:11px;color:#41444a}.zs-public-invite-action-head{margin:22px 0 14px}.zs-public-invite-action-head h3{margin:0 0 5px;color:#25282d;font-size:16px}.zs-public-invite-action-head p{margin:0;color:#73767c;font-size:12px;line-height:1.5}.zs-public-invite-policy{margin-top:-4px}.zs-public-invite-login{text-decoration:none;display:flex;align-items:center;justify-content:center;gap:8px}.zs-public-invite-login .auth-icon{width:16px;height:16px}
@media (max-width:1180px){.zs-invite-form{grid-template-columns:1fr 1fr}.zs-invite-form .zs-company-primary{grid-column:1/-1}.zs-company-member-row--managed{grid-template-columns:40px minmax(130px,1fr) minmax(210px,auto)}.zs-member-remove-form{grid-column:3}.zs-project-member-row{grid-template-columns:38px minmax(130px,1fr) minmax(190px,auto)}.zs-project-member-remove{grid-column:3}}
@media (max-width:760px){.zs-invite-form{grid-template-columns:1fr}.zs-invite-form .zs-company-primary{grid-column:auto}.zs-invite-link-box>div:first-child{align-items:flex-start;flex-direction:column}.zs-invite-link-row{grid-template-columns:1fr}.zs-company-member-row--managed,.zs-project-member-row,.zs-invite-row{grid-template-columns:38px minmax(0,1fr)}.zs-member-role-form,.zs-member-remove-form,.zs-project-member-control,.zs-project-member-remove,.zs-company-member-row--managed>.zs-company-member-role,.zs-invite-status,.zs-invite-row>form,.zs-project-access-badge{grid-column:2}.zs-member-role-form,.zs-project-member-control{flex-wrap:wrap}.zs-member-role-form select,.zs-project-member-control select{flex:1;min-width:120px}.zs-invite-status{justify-self:start}.zs-public-invite-summary{grid-template-columns:44px minmax(0,1fr)}.zs-public-invite-role{grid-column:2;justify-self:start}.zs-public-invite-meta{grid-template-columns:1fr}.zs-public-invite-project{grid-template-columns:32px minmax(0,1fr)}.zs-public-invite-project>span{grid-column:2;justify-self:start}}
@media (max-width:420px){.zs-member-role-form button span,.zs-member-remove-form button span,.zs-project-member-control button span,.zs-project-member-remove button span,.zs-invite-revoke span{display:none}.zs-public-invite-summary h2{font-size:18px}}


/* auth.css — section 10 */
/* ZSOne Platform v0.3.3 — scoped role model UI. */
.zs-role-model-card{overflow:hidden}
.zs-role-model-list{display:grid;gap:8px;margin:16px 0}
.zs-role-model-list>span{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid #e8e5df;border-radius:10px;background:#fff}
.zs-role-model-list b{font-size:13px;color:#20242b}
.zs-role-model-list small{font-size:11px;color:#7d7d78;text-align:right}
.zs-role-scope-panel .zs-role-scope-current{margin-top:16px;padding:12px;border:1px solid #e8e5df;border-radius:10px;background:#fff;display:grid;gap:4px}
.zs-role-scope-current small{font-size:11px;color:#7d7d78;text-transform:uppercase;letter-spacing:.04em}
.zs-role-scope-current strong{font-size:14px;color:#20242b}
@media(max-width:560px){.zs-role-model-list>span{align-items:flex-start;flex-direction:column;gap:3px}.zs-role-model-list small{text-align:left}}


/* auth.css — section 11 */
/* ZSOne Platform v0.3.4 — permission matrix UI. */
.zs-permission-matrix-card{overflow:hidden}
.zs-permission-server{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:7px 10px;border:1px solid #d9e6dc;border-radius:999px;background:#f3f8f4;color:#39714a;font-size:10px;font-weight:800;white-space:nowrap}
.zs-permission-server .auth-icon{width:14px;height:14px}
.zs-permission-matrix{margin:0 16px 16px;border:1px solid #e6e2da;border-radius:12px;overflow:hidden;background:#fff}
.zs-permission-row{display:grid;grid-template-columns:minmax(140px,1.8fr) repeat(4,minmax(58px,.65fr));align-items:center;min-height:48px;border-top:1px solid #ece8e1}
.zs-permission-row:first-child{border-top:0}
.zs-permission-row>strong,.zs-permission-row>span{min-width:0;padding:10px 12px}
.zs-permission-row>strong{color:#34383f;font-size:11px;font-weight:800}
.zs-permission-head{min-height:38px;background:#f7f6f2;color:#747870}
.zs-permission-head>span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.045em;text-align:center}
.zs-permission-head>span:first-child{text-align:left}
.zs-permission-cell{display:flex;align-items:center;justify-content:center;color:#a3a7ad;border-left:1px solid #f0ede7}
.zs-permission-cell .auth-icon{width:15px;height:15px}
.zs-permission-cell.is-allowed{color:#39714a;background:#f6faf7}
.zs-permission-cell.is-denied{color:#9ca1a6;background:#fbfbfa}
.zs-permission-boundary{display:flex;gap:11px;align-items:flex-start;margin:0 16px 16px;padding:12px 13px;border:1px solid #e3ded2;border-radius:11px;background:#faf8f3;color:#5d6269}
.zs-permission-boundary>.auth-icon{width:18px;height:18px;flex:0 0 auto;color:#9a6c20;margin-top:1px}
.zs-permission-boundary strong{display:block;margin-bottom:3px;color:#383b40;font-size:11px}
.zs-permission-boundary p{margin:0;color:#7d817f;font-size:9px;line-height:1.5}

.zs-project-permission-card{padding-bottom:0!important;overflow:hidden}
.zs-project-permission-card>span:first-child{display:inline-flex}
.zs-project-permission-list{margin-top:14px;border:1px solid #e8e5df;border-radius:10px;overflow:hidden;background:#fff}
.zs-project-permission-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px;padding:8px 10px;border-top:1px solid #efede8}
.zs-project-permission-list>div:first-child{border-top:0}
.zs-project-permission-list strong{font-size:10px;color:#4b4f55}
.zs-project-permission-list span{padding:4px 7px;border-radius:999px;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap}
.zs-project-permission-list .is-manage{background:#e9f4ec;color:#356d46}
.zs-project-permission-list .is-contribute{background:#f5eddc;color:#8b6425}
.zs-project-permission-list .is-read{background:#edf1f5;color:#5b6672}
.zs-project-permission-list .is-none{background:#f2f2f1;color:#969a9f}
.zs-permission-empty{display:flex;align-items:center;gap:8px;margin-top:14px;padding:11px;border:1px dashed #dfdcd5;border-radius:10px;color:#85898f;font-size:9px;line-height:1.45}
.zs-permission-empty .auth-icon{width:15px;height:15px;flex:0 0 auto}

.zs-module-permission{margin-top:auto;align-self:flex-start;padding:4px 7px;border-radius:999px;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.zs-module-permission.is-manage{background:#e9f4ec;color:#356d46}
.zs-module-permission.is-contribute{background:#f6eedc;color:#8a6323}
.zs-module-permission.is-read{background:#edf1f5;color:#5b6672}
.zs-module-permission.is-none{background:#f0f0ee;color:#9a9da1}
.zs-module-card>p{margin-bottom:10px}

@media (max-width:760px){
  .zs-permission-server{display:none}
  .zs-permission-matrix{margin:0 13px 13px;overflow-x:auto}
  .zs-permission-row{min-width:520px;grid-template-columns:minmax(130px,1.6fr) repeat(4,minmax(72px,.7fr))}
  .zs-permission-boundary{margin:0 13px 13px}
}


/* auth.css — section 12 */
/* ZSOne Platform v0.3.4.1 — consistent + button and modal create/add UX. */
.zs-panel-head--with-action{display:flex;align-items:center;justify-content:space-between;gap:16px}
.zs-panel-head-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.zs-add-button{width:38px;height:38px;display:inline-grid;place-items:center;flex:0 0 auto;border:1px solid #cda758;border-radius:10px;background:#b88a32;color:#fff;box-shadow:0 5px 14px rgba(126,88,25,.14);cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.zs-add-button:hover{background:#a97d2c;border-color:#b88a32;box-shadow:0 7px 18px rgba(126,88,25,.2)}
.zs-add-button:active{transform:translateY(1px)}
.zs-add-button:focus-visible{outline:3px solid rgba(184,138,50,.22);outline-offset:2px}
.zs-add-button .auth-icon{width:18px;height:18px;stroke-width:2}
.zs-add-button--soft{background:#fff;color:#8c6626;border-color:#dbcfb8;box-shadow:none}
.zs-add-button--soft:hover{background:#fbf7ef;border-color:#cdb67d}
.zs-add-button--inline{width:36px;height:36px}

.zs-empty-add-row{display:flex;align-items:center;gap:10px;margin-top:14px}
.zs-empty-add-row .zs-add-button{width:40px;height:40px}
.zs-empty-add-row span{color:#6f7378;font-size:10px;font-weight:750}

.zs-create-inline-removed{display:none!important}

body.zs-modal-open{overflow:hidden}
.zs-modal[hidden]{display:none!important}
.zs-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;background:rgba(25,28,33,.44);backdrop-filter:blur(3px)}
.zs-modal-card{width:min(100%,620px);max-height:min(86vh,820px);display:flex;flex-direction:column;border:1px solid #ded8cc;border-radius:16px;background:#fff;box-shadow:0 24px 80px rgba(25,28,33,.22);overflow:hidden}
.zs-modal-card--wide{width:min(100%,760px)}
.zs-modal-head{min-height:76px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid #ece8e0;background:#fcfbf8}
.zs-modal-title-wrap{display:flex;align-items:flex-start;gap:12px;min-width:0}
.zs-modal-title-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #e2d5b8;border-radius:10px;background:#f7f0df;color:#956c25}
.zs-modal-title-icon .auth-icon{width:19px;height:19px}
.zs-modal-head h3{margin:0;color:#292d32;font-size:17px;line-height:1.25;letter-spacing:-.02em}
.zs-modal-head p{margin:5px 0 0;color:#80848a;font-size:10px;line-height:1.5}
.zs-modal-close{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #dfddd7;border-radius:9px;background:#fff;color:#70747a;cursor:pointer}
.zs-modal-close:hover{background:#f5f4f1;color:#33373c}
.zs-modal-close:focus-visible{outline:3px solid rgba(184,138,50,.18);outline-offset:2px}
.zs-modal-close .auth-icon{width:16px;height:16px}
.zs-modal-body{overflow:auto;padding:20px}
.zs-modal-body .zs-company-form,.zs-modal-body .zs-project-form,.zs-modal-body .zs-invite-form{margin:0;padding:0;border:0;background:transparent}
.zs-modal-body .zs-invite-form{grid-template-columns:1fr 1fr}
.zs-modal-body .zs-invite-form .zs-invite-email{grid-column:1/-1}
.zs-modal-body .zs-invite-form .zs-company-primary{grid-column:1/-1}
.zs-modal-body .zs-project-form{display:grid;gap:13px}
.zs-modal-body .zs-project-date-grid{margin:0}
.zs-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid #ece9e2}
.zs-modal-actions .zs-company-primary,.zs-modal-actions .zs-project-primary{margin:0;min-width:150px;justify-content:center}
.zs-modal-cancel{min-height:40px;padding:0 14px;border:1px solid #ddd9d1;border-radius:9px;background:#fff;color:#555a61;font:inherit;font-size:10px;font-weight:800;cursor:pointer}
.zs-modal-cancel:hover{background:#f6f5f2}

.zs-project-member-add-form{display:grid;gap:14px}
.zs-project-member-add-form label{display:grid;gap:7px;color:#54585e;font-size:11px;font-weight:750}
.zs-project-member-add-form select{width:100%;min-height:44px;padding:0 12px;border:1px solid #d9d8d3;border-radius:10px;background:#fff;color:#292d32;font:inherit;outline:none}
.zs-project-member-add-form select:focus{border-color:#b58b35;box-shadow:0 0 0 3px rgba(181,139,53,.12)}
.zs-project-member-add-form .zs-project-primary{min-height:42px;margin:0;justify-content:center}

.zs-project-member-row.is-addable .zs-project-access-badge.is-none{border-style:dashed}
.zs-projects-list-head .zs-panel-head-actions,.zs-company-members-card .zs-panel-head-actions,.zs-company-list-card .zs-panel-head-actions,.zs-project-members-panel .zs-panel-head-actions{align-self:center}

@media (max-width:760px){
  .zs-modal{place-items:end center;padding:12px;background:rgba(25,28,33,.5)}
  .zs-modal-card,.zs-modal-card--wide{width:100%;max-height:92vh;border-radius:15px}
  .zs-modal-head{min-height:70px;padding:15px 16px}
  .zs-modal-body{padding:16px}
  .zs-modal-body .zs-invite-form{grid-template-columns:1fr}
  .zs-modal-body .zs-invite-form .zs-invite-email,.zs-modal-body .zs-invite-form .zs-company-primary{grid-column:auto}
  .zs-modal-actions{position:sticky;bottom:-16px;margin-left:-16px;margin-right:-16px;padding:12px 16px 16px;background:#fff}
  .zs-modal-actions .zs-company-primary,.zs-modal-actions .zs-project-primary{min-width:0;flex:1}
  .zs-panel-head--with-action{align-items:flex-start}
}

@media (max-width:430px){
  .zs-add-button{width:36px;height:36px;border-radius:9px}
  .zs-modal{padding:8px}
  .zs-modal-title-icon{width:35px;height:35px}
  .zs-modal-head h3{font-size:16px}
}
.zs-company-empty>.zs-panel-head{width:100%;padding:0 0 18px;border-bottom:0;background:transparent}
.zs-company-empty>.zs-panel-head+.zs-company-empty-icon{margin-top:4px}
.zs-invite-flash-panel{padding:0;overflow:hidden}
.zs-invite-flash-panel .zs-invite-link-box{margin:0;border:0;border-radius:0}
.zs-modal-body .zs-invite-form .zs-modal-actions{grid-column:1/-1}


/* auth.css — section 13 */
/* ZSOne Platform v0.3.4.3 — dedicated host surfaces. */
.zs-host-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.zs-host-status{display:flex;align-items:center;gap:14px;padding:18px}.zs-host-status .zs-host-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#f0ede5;color:#30343a;flex:0 0 auto}.zs-host-status.is-ready .zs-host-icon{background:#f5e6ba;color:#7b5a00}.zs-host-status small{display:block;color:#74777d;font-size:12px;margin-bottom:4px}.zs-host-status strong{display:block;color:#25282d;font-size:15px;line-height:1.35}.zs-bim-entry-panel{display:grid;grid-template-columns:76px minmax(0,1fr);gap:22px;padding:26px}.zs-bim-entry-mark{display:grid;place-items:center;width:76px;height:76px;border-radius:18px;background:#25282d;color:#e3b33b}.zs-bim-entry-mark .auth-icon{width:34px;height:34px}.zs-bim-entry-copy h3{font-size:24px;margin:8px 0 8px;color:#22252a}.zs-bim-entry-copy>p{max-width:820px;color:#666a70;line-height:1.65;margin:0}.zs-bim-entry-meta{display:flex;flex-wrap:wrap;gap:10px 18px;margin:18px 0}.zs-bim-entry-meta span{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:#555a61}.zs-bim-entry-meta .auth-icon{width:16px;height:16px;color:#a57913}.zs-bim-denied{color:#9e3434!important}.zs-surface-mobile .zs-platform-topbar{position:sticky;top:0;z-index:20}.zs-surface-mobile .zs-platform-content{padding-bottom:max(28px,env(safe-area-inset-bottom))}@media(max-width:760px){.zs-host-status-grid{grid-template-columns:1fr}.zs-bim-entry-panel{grid-template-columns:1fr;padding:20px}.zs-bim-entry-mark{width:58px;height:58px;border-radius:15px}.zs-bim-entry-copy h3{font-size:21px}}


/* auth.css — section 14 */
/* ZSOne Platform v0.4.0 — real dashboard foundation. */
.zs-dashboard-context{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:0 0 18px;padding:20px 22px;border:1px solid #e4dfd4;border-radius:16px;background:linear-gradient(135deg,#fff 0%,#fbf8f0 100%);box-shadow:0 8px 28px rgba(35,38,43,.045)}
.zs-dashboard-context-copy{min-width:0}.zs-dashboard-context-copy h3{margin:8px 0 4px;color:#25282d;font-size:24px;line-height:1.2;letter-spacing:-.025em}.zs-dashboard-context-copy p{display:flex;align-items:center;gap:7px;margin:0;color:#73777d;font-size:11px;font-weight:700}.zs-dashboard-context-copy p .auth-icon{width:15px;height:15px;color:#9b7122}
.zs-dashboard-switchers{display:flex;align-items:flex-end;gap:10px;flex:0 1 600px;justify-content:flex-end}.zs-dashboard-switcher{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;min-width:220px}.zs-dashboard-switcher label{grid-column:1/-1;display:flex;align-items:center;gap:6px;color:#686c72;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.zs-dashboard-switcher label .auth-icon{width:14px;height:14px;color:#9b7122}.zs-dashboard-switcher select{min-width:0;height:42px;padding:0 34px 0 12px;border:1px solid #d9d5cc;border-radius:10px;background:#fff;color:#30343a;font:inherit;font-size:11px;font-weight:750;outline:none}.zs-dashboard-switcher select:focus{border-color:#b68a35;box-shadow:0 0 0 3px rgba(182,138,53,.12)}.zs-dashboard-switcher select:disabled{background:#f3f2ef;color:#9a9da2}.zs-dashboard-switcher button{height:42px;padding:0 12px;border:1px solid #ded8cc;border-radius:10px;background:#fff;color:#585d63;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.zs-dashboard-switcher button:hover{background:#f8f5ed;border-color:#cab98f}.zs-dashboard-switcher.is-js button{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.zs-dashboard-empty{display:flex;align-items:center;gap:18px;padding:28px}.zs-dashboard-empty-icon{display:grid;place-items:center;width:58px;height:58px;flex:0 0 auto;border-radius:15px;background:#f3eddf;color:#8b6728}.zs-dashboard-empty-icon .auth-icon{width:26px;height:26px}.zs-dashboard-empty div{min-width:0;flex:1}.zs-dashboard-empty h3{margin:0 0 7px;color:#292d32;font-size:18px}.zs-dashboard-empty p{margin:0;color:#777b80;font-size:11px;line-height:1.6}.zs-dashboard-empty>a{display:inline-flex;align-items:center;gap:8px;padding:11px 13px;border-radius:10px;background:#2f3339;color:#fff;text-decoration:none;font-size:10px;font-weight:800}.zs-dashboard-empty>a .auth-icon{width:15px;height:15px}
.zs-dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.zs-dashboard-kpis article{display:flex;align-items:center;gap:13px;min-height:88px;padding:16px;border:1px solid #e4e1da;border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(35,38,43,.035)}.zs-dashboard-kpi-icon{display:grid;place-items:center;width:39px;height:39px;flex:0 0 auto;border:1px solid #eadfc9;border-radius:11px;background:#f9f4e9;color:#936a23}.zs-dashboard-kpi-icon .auth-icon{width:18px;height:18px}.zs-dashboard-kpis small{display:block;margin-bottom:3px;color:#85898e;font-size:9px;font-weight:750}.zs-dashboard-kpis strong{display:block;color:#272b30;font-size:23px;line-height:1}
.zs-dashboard-primary-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,.75fr);gap:16px;margin-bottom:16px}.zs-dashboard-project-panel,.zs-dashboard-status-panel,.zs-dashboard-recent-projects,.zs-dashboard-activity,.zs-dashboard-modules{overflow:hidden}.zs-dashboard-project-hero{padding:0 18px 18px}.zs-dashboard-project-badge{display:flex;align-items:center;gap:13px;padding:16px;border:1px solid #e6e1d6;border-radius:13px;background:#fbfaf7}.zs-dashboard-project-badge>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:11px;background:#30343a;color:#e5b94c}.zs-dashboard-project-badge>span .auth-icon{width:20px;height:20px}.zs-dashboard-project-badge small{display:block;color:#9a7026;font-size:9px;font-weight:850;letter-spacing:.055em;text-transform:uppercase}.zs-dashboard-project-badge strong{display:block;margin-top:3px;color:#2c3035;font-size:15px}.zs-dashboard-project-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:10px;border:1px solid #ebe7df;border-radius:12px;overflow:hidden;background:#ebe7df}.zs-dashboard-project-facts>div{min-width:0;padding:12px;background:#fff}.zs-dashboard-project-facts small{display:block;margin-bottom:4px;color:#909399;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.zs-dashboard-project-facts strong{display:block;overflow:hidden;color:#44484e;font-size:10px;line-height:1.4;text-overflow:ellipsis}.zs-dashboard-project-empty{display:flex;align-items:center;gap:13px;margin:0 18px 18px;padding:20px;border:1px dashed #dedbd4;border-radius:12px;background:#fcfbf8}.zs-dashboard-project-empty>span{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:12px;background:#f1eee7;color:#777c82}.zs-dashboard-project-empty>span .auth-icon{width:20px;height:20px}.zs-dashboard-project-empty strong{display:block;color:#383c41;font-size:12px}.zs-dashboard-project-empty p{margin:4px 0 0;color:#868a90;font-size:10px;line-height:1.5}.zs-dashboard-panel-actions{display:flex;justify-content:flex-end;padding:0 18px 18px}.zs-dashboard-panel-actions a,.zs-dashboard-recent-projects .zs-panel-head>a{display:inline-flex;align-items:center;gap:7px;color:#7d5b20;text-decoration:none;font-size:9px;font-weight:850}.zs-dashboard-panel-actions .auth-icon,.zs-dashboard-recent-projects .zs-panel-head>a .auth-icon{width:14px;height:14px}
.zs-dashboard-status-list{display:grid;gap:0;margin:0 16px 14px;border:1px solid #e9e5dd;border-radius:12px;overflow:hidden}.zs-dashboard-status-list>div{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:42px;padding:8px 11px;border-top:1px solid #efede7;background:#fff}.zs-dashboard-status-list>div:first-child{border-top:0}.zs-dashboard-status-list strong{color:#4c5056;font-size:10px}.zs-dashboard-status-list em{font-style:normal;color:#2f3338;font-size:12px;font-weight:850}.zs-dashboard-status-dot{width:8px;height:8px;border-radius:50%;background:#b2b4b7}.zs-dashboard-status-dot.is-active{background:#4f8a60}.zs-dashboard-status-dot.is-planning{background:#b78a32}.zs-dashboard-status-dot.is-on_hold{background:#b86f42}.zs-dashboard-status-dot.is-completed{background:#677581}.zs-dashboard-role-card{display:flex;align-items:center;gap:10px;margin:0 16px 16px;padding:12px;border:1px solid #e5dfd2;border-radius:11px;background:#f9f5eb}.zs-dashboard-role-card>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#fff;color:#916922}.zs-dashboard-role-card>span .auth-icon{width:16px;height:16px}.zs-dashboard-role-card div{min-width:0;flex:1}.zs-dashboard-role-card small{display:block;color:#898d91;font-size:8px}.zs-dashboard-role-card strong{display:block;margin-top:2px;color:#3c4045;font-size:10px}.zs-dashboard-role-card em{font-style:normal;color:#777b80;font-size:9px;font-weight:750}
.zs-dashboard-secondary-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}.zs-dashboard-project-list,.zs-dashboard-activity-list{margin:0 16px 16px;border:1px solid #e7e3dc;border-radius:12px;overflow:hidden;background:#fff}.zs-dashboard-project-row{display:grid;grid-template-columns:34px minmax(0,1fr) minmax(120px,auto) auto;align-items:center;gap:10px;min-height:62px;padding:9px 11px;border-top:1px solid #eeebe5;background:#fff}.zs-dashboard-project-row:first-child{border-top:0}.zs-dashboard-project-row.is-selected{background:#fbf7ed}.zs-dashboard-project-row-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f1eee8;color:#62676d}.zs-dashboard-project-row-icon .auth-icon{width:16px;height:16px}.zs-dashboard-project-row-copy{min-width:0}.zs-dashboard-project-row-copy small{display:block;color:#9a7127;font-size:8px;font-weight:850}.zs-dashboard-project-row-copy strong{display:block;overflow:hidden;margin:2px 0;color:#3b3f44;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.zs-dashboard-project-row-copy em{font-style:normal;color:#8a8e93;font-size:8px}.zs-dashboard-project-row-date{color:#96999d;font-size:8px;white-space:nowrap}.zs-dashboard-project-row button{min-height:31px;padding:0 10px;border:1px solid #d8d4cb;border-radius:8px;background:#fff;color:#585d63;font:inherit;font-size:8px;font-weight:850;cursor:pointer}.zs-dashboard-project-row button:hover{background:#f7f3e9;border-color:#ccb77f}.zs-dashboard-selected{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border-radius:999px;background:#eaf4ed;color:#447754;font-size:8px;font-weight:850;white-space:nowrap}.zs-dashboard-selected .auth-icon{width:12px;height:12px}
.zs-dashboard-activity-list article{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:61px;padding:10px 11px;border-top:1px solid #eeebe5}.zs-dashboard-activity-list article:first-child{border-top:0}.zs-dashboard-activity-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f5f1e7;color:#936c27}.zs-dashboard-activity-icon .auth-icon{width:15px;height:15px}.zs-dashboard-activity-list strong{display:block;color:#42464b;font-size:10px}.zs-dashboard-activity-list small{display:block;margin-top:3px;color:#8d9196;font-size:8px}.zs-dashboard-activity-list time{color:#999ca0;font-size:8px;white-space:nowrap}.zs-dashboard-list-empty{display:flex;align-items:center;justify-content:center;gap:8px;min-height:110px;margin:0 16px 16px;border:1px dashed #e0ddd6;border-radius:12px;color:#8e9297;font-size:10px}.zs-dashboard-list-empty .auth-icon{width:17px;height:17px}
.zs-dashboard-module-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;padding:0 16px 16px}.zs-dashboard-module-card{display:flex;align-items:center;gap:9px;min-width:0;padding:12px;border:1px solid #e6e2da;border-radius:11px;background:#fff;color:inherit;text-decoration:none}.zs-dashboard-module-card:hover:not(.is-locked){border-color:#d6c59d;background:#fbf8f0}.zs-dashboard-module-card.is-locked{background:#fafafa;color:#8f9397}.zs-dashboard-module-icon{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:9px;background:#f3eee3;color:#8f6825}.zs-dashboard-module-icon .auth-icon{width:15px;height:15px}.zs-dashboard-module-card div{min-width:0;flex:1}.zs-dashboard-module-card strong{display:block;overflow:hidden;color:#45494f;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.zs-dashboard-module-card small{display:inline-block;margin-top:4px;padding:3px 5px;border-radius:999px;font-size:6px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.zs-dashboard-module-card small.is-manage{background:#e9f4ec;color:#356d46}.zs-dashboard-module-card small.is-contribute{background:#f6eedc;color:#8a6323}.zs-dashboard-module-card small.is-read{background:#edf1f5;color:#5b6672}.zs-dashboard-module-card small.is-none{background:#efefed;color:#989b9f}.zs-dashboard-module-tail{color:#a5a8ac}.zs-dashboard-module-tail .auth-icon{width:13px;height:13px}
.zs-dashboard-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.zs-dashboard-quick>a{display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:9px;padding:13px;border:1px solid #e5e1d9;border-radius:12px;background:#fff;color:inherit;text-decoration:none}.zs-dashboard-quick>a:hover{border-color:#d5c49c;background:#fbf8f0}.zs-dashboard-quick>a>span:first-child{display:grid;place-items:center;width:35px;height:35px;border-radius:9px;background:#f2eee5;color:#8c6727}.zs-dashboard-quick>a>span:first-child .auth-icon{width:16px;height:16px}.zs-dashboard-quick small{display:block;color:#8e9296;font-size:8px}.zs-dashboard-quick strong{display:block;overflow:hidden;margin-top:2px;color:#40444a;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.zs-dashboard-quick>a>.auth-icon{width:14px;height:14px;color:#9ba0a4}
@media(max-width:1180px){.zs-dashboard-context{align-items:stretch;flex-direction:column}.zs-dashboard-switchers{flex:1 1 auto;justify-content:flex-start}.zs-dashboard-switcher{flex:1}.zs-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.zs-dashboard-primary-grid,.zs-dashboard-secondary-grid{grid-template-columns:1fr}.zs-dashboard-module-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.zs-dashboard-context{padding:16px}.zs-dashboard-context-copy h3{font-size:20px}.zs-dashboard-switchers{display:grid;grid-template-columns:1fr;width:100%}.zs-dashboard-switcher{min-width:0}.zs-dashboard-kpis{grid-template-columns:1fr 1fr;gap:8px}.zs-dashboard-kpis article{min-height:76px;padding:12px}.zs-dashboard-kpis strong{font-size:20px}.zs-dashboard-project-facts{grid-template-columns:1fr 1fr}.zs-dashboard-project-row{grid-template-columns:32px minmax(0,1fr) auto}.zs-dashboard-project-row-date{display:none}.zs-dashboard-activity-list article{grid-template-columns:34px minmax(0,1fr)}.zs-dashboard-activity-list time{grid-column:2}.zs-dashboard-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zs-dashboard-quick{grid-template-columns:1fr 1fr}.zs-dashboard-empty{align-items:flex-start;flex-wrap:wrap}.zs-dashboard-empty>a{margin-left:76px}}
@media(max-width:430px){.zs-dashboard-kpis{grid-template-columns:1fr}.zs-dashboard-project-facts{grid-template-columns:1fr}.zs-dashboard-module-grid,.zs-dashboard-quick{grid-template-columns:1fr}.zs-dashboard-project-row{grid-template-columns:30px minmax(0,1fr)}.zs-dashboard-project-row button,.zs-dashboard-selected{grid-column:2;justify-self:start}.zs-dashboard-empty>a{margin-left:0;width:100%;justify-content:center}.zs-dashboard-context-copy h3{font-size:18px}}


/* auth.css — section 15 */
/* ZSOne Platform v0.4.1 — dashboard selector, portfolio and activity refinement. */
.zs-platform-page .zs-dashboard-context-v041{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px 26px;padding:22px 24px;background:linear-gradient(135deg,#fff 0%,#fcfaf5 100%)}
.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-context-copy h3{margin:7px 0 5px;font-size:26px;line-height:1.14}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-context-copy p{display:block;max-width:620px;font-size:11px;line-height:1.55;font-weight:650}
.zs-dashboard-live-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #d9e7dc;border-radius:999px;background:#f4f9f5;color:#3f7550;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}.zs-dashboard-live-pill .auth-icon{width:13px;height:13px}
.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switchers{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:none;flex:none}
.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.72fr) auto;align-items:center;gap:12px;min-width:0;padding:11px 12px;border:1px solid #e4dfd5;border-radius:13px;background:#fff;transition:border-color .16s ease,box-shadow .16s ease,opacity .16s ease}
.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher:focus-within{border-color:#ccb57f;box-shadow:0 0 0 3px rgba(184,139,50,.08)}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher.is-loading{opacity:.62;pointer-events:none}
.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher label{grid-column:auto;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;margin:0;text-transform:none;letter-spacing:0}.zs-dashboard-switcher-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f6f0e3;color:#976d24}.zs-dashboard-switcher-icon .auth-icon{width:16px;height:16px}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher label small{display:block;color:#96999d;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher label strong{display:block;overflow:hidden;margin-top:2px;color:#34383e;font-size:10px;font-weight:820;text-overflow:ellipsis;white-space:nowrap}
.zs-dashboard-select-wrap{position:relative;min-width:0}.zs-dashboard-select-wrap>.auth-icon{position:absolute;right:11px;top:50%;z-index:2;width:13px;height:13px;transform:translateY(-50%);color:#8f9397;pointer-events:none}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher select{width:100%;height:38px;padding:0 34px 0 11px;border-color:#ddd8cf;border-radius:9px;background:#fbfaf7;appearance:none;font-size:10px}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher button{height:38px}

.zs-dashboard-primary-grid-v041{grid-template-columns:minmax(0,1.75fr) minmax(300px,.72fr)}.zs-dashboard-project-hero-v041{padding-bottom:16px}.zs-dashboard-project-hero-v041 .zs-dashboard-project-badge{padding:15px 16px;background:linear-gradient(135deg,#fbfaf7,#fff)}.zs-dashboard-project-facts-v041{grid-template-columns:repeat(4,minmax(0,1fr))}.zs-dashboard-project-facts-v041 strong{white-space:normal;overflow-wrap:anywhere}
.zs-dashboard-timeline{margin-top:10px;padding:14px 15px;border:1px solid #e8e3d9;border-radius:12px;background:#fff}.zs-dashboard-timeline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.zs-dashboard-timeline-head small{display:block;color:#96999d;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.zs-dashboard-timeline-head strong{display:block;margin-top:3px;color:#3d4147;font-size:10px}.zs-dashboard-timeline-head>span{padding:5px 8px;border-radius:999px;background:#f3f1ec;color:#6f7479;font-size:8px;font-weight:800;white-space:nowrap}.zs-dashboard-timeline.is-active .zs-dashboard-timeline-head>span{background:#eef7f0;color:#437455}.zs-dashboard-timeline.is-before .zs-dashboard-timeline-head>span{background:#f8f2e5;color:#8c6729}.zs-dashboard-timeline.is-ended .zs-dashboard-timeline-head>span{background:#f4ece8;color:#8b5d46}
.zs-dashboard-timeline progress{display:block;width:100%;height:7px;margin:12px 0 8px;border:0;border-radius:999px;overflow:hidden;background:#edeae4}.zs-dashboard-timeline progress::-webkit-progress-bar{background:#edeae4;border-radius:999px}.zs-dashboard-timeline progress::-webkit-progress-value{background:#b48732;border-radius:999px}.zs-dashboard-timeline progress::-moz-progress-bar{background:#b48732;border-radius:999px}.zs-dashboard-timeline-dates{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;color:#85898e;font-size:8px}.zs-dashboard-timeline-dates span{display:flex;align-items:center;gap:5px}.zs-dashboard-timeline-dates span:last-child{justify-content:flex-end}.zs-dashboard-timeline-dates .auth-icon{width:12px;height:12px;color:#9a722d}.zs-dashboard-timeline-dates strong{color:#50545a;font-size:9px}.zs-dashboard-timeline>p{margin:9px 0 0;padding-top:8px;border-top:1px solid #f0ede7;color:#989b9f;font-size:7px;line-height:1.45}.zs-dashboard-timeline-empty{display:flex;align-items:center;gap:7px;margin-top:10px;padding:10px;border-radius:9px;background:#f8f7f4;color:#85898e;font-size:9px}.zs-dashboard-timeline-empty .auth-icon{width:14px;height:14px}

.zs-dashboard-status-list-v041>div{grid-template-columns:10px minmax(110px,1fr) minmax(80px,.9fr) auto;gap:9px;min-height:50px}.zs-dashboard-status-copy{min-width:0}.zs-dashboard-status-copy strong{display:block}.zs-dashboard-status-copy small{display:block;margin-top:2px;color:#9a9da1;font-size:7px}.zs-dashboard-status-list-v041 progress{width:100%;height:6px;border:0;border-radius:999px;overflow:hidden;background:#efede8}.zs-dashboard-status-list-v041 progress::-webkit-progress-bar{background:#efede8;border-radius:999px}.zs-dashboard-status-list-v041 progress::-webkit-progress-value{background:#a58b5b;border-radius:999px}.zs-dashboard-status-list-v041 progress::-moz-progress-bar{background:#a58b5b;border-radius:999px}

.zs-dashboard-project-row-copy em{display:inline-flex;align-items:center;width:max-content;margin-top:3px;padding:3px 6px;border-radius:999px;background:#f1f1ef;color:#777b80;font-size:7px;font-weight:800}.zs-dashboard-project-row-copy em.is-active{background:#eaf4ed;color:#437653}.zs-dashboard-project-row-copy em.is-planning{background:#f7f0df;color:#896527}.zs-dashboard-project-row-copy em.is-on_hold{background:#f6ece6;color:#945f43}.zs-dashboard-project-row-copy em.is-completed{background:#edf1f4;color:#5b6975}
.zs-dashboard-activity-copy{min-width:0}.zs-dashboard-activity-scope{display:inline-flex;margin-bottom:3px;padding:3px 6px;border-radius:999px;background:#f1f1ef;color:#72777c;font-size:6px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.zs-dashboard-activity-scope.is-project{background:#f7f0df;color:#8c6627}.zs-dashboard-activity-scope.is-company{background:#eef2f4;color:#5f6b75}.zs-dashboard-activity-list strong{font-size:10px;line-height:1.35}.zs-dashboard-activity-list small{line-height:1.45;overflow-wrap:anywhere}

@media(max-width:1180px){.zs-platform-page .zs-dashboard-context-v041{grid-template-columns:1fr}.zs-dashboard-live-pill{justify-self:start}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switchers{grid-column:auto}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher{grid-template-columns:minmax(0,1fr) minmax(220px,.8fr) auto}.zs-dashboard-primary-grid-v041{grid-template-columns:1fr}.zs-dashboard-project-facts-v041{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.zs-platform-page .zs-dashboard-context-v041{padding:16px}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-context-copy h3{font-size:21px}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switchers{grid-template-columns:1fr}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher{grid-template-columns:minmax(0,1fr)}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher label{grid-column:1}.zs-dashboard-select-wrap{grid-column:1}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher button{grid-column:1}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switcher.is-js button{position:absolute}.zs-dashboard-project-facts-v041{grid-template-columns:1fr 1fr}.zs-dashboard-status-list-v041>div{grid-template-columns:10px minmax(0,1fr) auto}.zs-dashboard-status-list-v041 progress{grid-column:2/-1}.zs-dashboard-activity-list article{align-items:start}.zs-dashboard-activity-list time{margin-top:2px}}
@media(max-width:430px){.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-context-copy h3{font-size:19px}.zs-dashboard-project-facts-v041{grid-template-columns:1fr}.zs-dashboard-timeline-head{align-items:flex-start;flex-direction:column}.zs-dashboard-timeline-dates{grid-template-columns:1fr auto}.zs-dashboard-timeline-dates span:last-child{grid-column:1;justify-content:flex-start}.zs-dashboard-timeline-dates strong{grid-column:2;grid-row:1/3}.zs-dashboard-status-list-v041>div{grid-template-columns:10px minmax(0,1fr) auto}.zs-dashboard-status-list-v041 progress{grid-column:2/-1}.zs-dashboard-live-pill{font-size:7px}}


/* auth.css — section 16 */
/* ZSOne Platform v0.4.2 — project action center + attention center. */
.zs-dashboard-attention-pill{display:inline-flex;align-items:center;gap:7px;justify-self:end;padding:7px 9px;border:1px solid #e2ddd2;border-radius:999px;background:#fff;color:#64696f;text-decoration:none;font-size:8px;font-weight:850;white-space:nowrap;transition:border-color .16s ease,background .16s ease,color .16s ease}.zs-dashboard-attention-pill .auth-icon{width:13px;height:13px}.zs-dashboard-attention-pill strong{display:grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#eff1f2;color:#555b61;font-size:8px}.zs-dashboard-attention-pill.has-items{border-color:#e0c88e;background:#fffaf0;color:#795a21}.zs-dashboard-attention-pill.has-items strong{background:#b48732;color:#fff}.zs-dashboard-attention-pill.is-clear{border-color:#d9e7dc;background:#f7fbf8;color:#477255}.zs-dashboard-attention-pill.is-clear strong{background:#e6f2e9;color:#3e724d}
.zs-platform-page .zs-dashboard-context-v041{grid-template-columns:minmax(0,1fr) auto auto}.zs-platform-page .zs-dashboard-context-v041 .zs-dashboard-switchers{grid-column:1/-1}

.zs-dashboard-operations-grid{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(340px,.78fr);gap:16px;margin-bottom:16px}.zs-dashboard-actions,.zs-dashboard-attention{min-width:0}.zs-dashboard-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 16px 16px}.zs-dashboard-action-card{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:68px;padding:12px 13px;border:1px solid #e6e2da;border-radius:12px;background:#fff;color:inherit;text-decoration:none;transition:border-color .16s ease,background .16s ease,transform .16s ease}.zs-dashboard-action-card:hover:not(.is-disabled){border-color:#d8c69a;background:#fcf9f2;transform:translateY(-1px)}.zs-dashboard-action-card>span:first-child{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f5efe3;color:#8c6727}.zs-dashboard-action-card>span:first-child .auth-icon{width:17px;height:17px}.zs-dashboard-action-card>div{min-width:0}.zs-dashboard-action-card strong{display:block;overflow:hidden;color:#3c4147;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.zs-dashboard-action-card small{display:block;overflow:hidden;margin-top:4px;color:#8d9196;font-size:8px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.zs-dashboard-action-card>.auth-icon{width:14px;height:14px;color:#a2a6aa}.zs-dashboard-action-card.is-disabled{background:#fafafa;color:#a1a4a8;cursor:not-allowed}.zs-dashboard-action-card.is-disabled>span:first-child{background:#f0f0ee;color:#979a9e}.zs-dashboard-action-card.is-disabled strong{color:#85898e}.zs-dashboard-action-card.is-disabled small{color:#a1a4a8}

.zs-dashboard-attention-count{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 9px;border-radius:999px;background:#f1f2f2;color:#62676c;font-size:9px}.zs-dashboard-attention-count .auth-icon{width:13px;height:13px}.zs-dashboard-attention-count.has-items{background:#f8f0df;color:#7e5d21}.zs-dashboard-attention-count.is-clear{background:#eaf4ed;color:#3f724e}.zs-dashboard-attention-list{display:grid;gap:8px;padding:0 16px 12px}.zs-dashboard-attention-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto 14px;align-items:center;gap:10px;min-height:61px;padding:10px 11px;border:1px solid #e8e4dd;border-radius:11px;background:#fff;color:inherit;text-decoration:none}.zs-dashboard-attention-item:hover{border-color:#d7c69e;background:#fcf9f3}.zs-dashboard-attention-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#f2f2f0;color:#72777c}.zs-dashboard-attention-icon .auth-icon{width:16px;height:16px}.zs-dashboard-attention-item strong{display:block;color:#41464b;font-size:10px;line-height:1.35}.zs-dashboard-attention-item small{display:block;margin-top:3px;color:#8d9196;font-size:8px;line-height:1.45}.zs-dashboard-attention-item em{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:#f0f0ee;color:#64696f;font-size:8px;font-style:normal;font-weight:900}.zs-dashboard-attention-item>.auth-icon{width:13px;height:13px;color:#a0a4a8}.zs-dashboard-attention-item.is-warning{border-color:#ead9b5;background:#fffaf0}.zs-dashboard-attention-item.is-warning .zs-dashboard-attention-icon{background:#f8edd5;color:#8b6421}.zs-dashboard-attention-item.is-warning em{background:#b48732;color:#fff}.zs-dashboard-attention-item.is-critical{border-color:#e5c9bd;background:#fff8f5}.zs-dashboard-attention-item.is-critical .zs-dashboard-attention-icon{background:#f7e6df;color:#9a583d}.zs-dashboard-attention-item.is-critical em{background:#a95f41;color:#fff}.zs-dashboard-attention-item.is-info .zs-dashboard-attention-icon{background:#eef2f4;color:#5e6b74}.zs-dashboard-attention-clear{display:flex;align-items:center;gap:12px;margin:0 16px 12px;padding:15px;border:1px solid #dbe8de;border-radius:11px;background:#f7fbf8}.zs-dashboard-attention-clear>.auth-icon{width:28px;height:28px;color:#4a7e59}.zs-dashboard-attention-clear strong{display:block;color:#3e6549;font-size:10px}.zs-dashboard-attention-clear p{margin:4px 0 0;color:#708077;font-size:8px;line-height:1.45}.zs-dashboard-attention-note{display:flex;align-items:flex-start;gap:7px;margin:0 16px 16px;padding-top:11px;border-top:1px solid #efede8;color:#93979b;font-size:7px;line-height:1.5}.zs-dashboard-attention-note .auth-icon{width:12px;height:12px;flex:0 0 auto;margin-top:1px;color:#8b8f93}

#zs-company-invitations,#zs-project-members{scroll-margin-top:92px}

@media(max-width:1180px){.zs-platform-page .zs-dashboard-context-v041{grid-template-columns:1fr auto}.zs-dashboard-attention-pill{grid-column:2;grid-row:1}.zs-dashboard-operations-grid{grid-template-columns:1fr}.zs-dashboard-action-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.zs-dashboard-action-card{grid-template-columns:34px minmax(0,1fr);min-height:72px}.zs-dashboard-action-card>.auth-icon{display:none}.zs-dashboard-action-card>span:first-child{width:34px;height:34px}}
@media(max-width:900px){.zs-dashboard-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.zs-platform-page .zs-dashboard-context-v041{grid-template-columns:1fr}.zs-dashboard-live-pill,.zs-dashboard-attention-pill{grid-column:auto;grid-row:auto;justify-self:start}.zs-dashboard-operations-grid{gap:12px}.zs-dashboard-action-grid{padding:0 12px 12px}.zs-dashboard-attention-list{padding:0 12px 10px}.zs-dashboard-attention-clear{margin:0 12px 10px}.zs-dashboard-attention-note{margin:0 12px 12px}.zs-dashboard-attention-item{grid-template-columns:34px minmax(0,1fr) auto}.zs-dashboard-attention-item>.auth-icon{display:none}}
@media(max-width:430px){.zs-dashboard-attention-pill span{display:none}.zs-dashboard-action-grid{grid-template-columns:1fr}.zs-dashboard-action-card{grid-template-columns:36px minmax(0,1fr) auto}.zs-dashboard-action-card>.auth-icon{display:block}.zs-dashboard-attention-item{grid-template-columns:32px minmax(0,1fr) auto}.zs-dashboard-attention-icon{width:32px;height:32px}.zs-dashboard-attention-item em{grid-column:3;grid-row:1}.zs-dashboard-attention-item small{overflow:visible;white-space:normal}.zs-dashboard-action-card small{overflow:visible;white-space:normal}}


/* auth.css — section 17 */
/* ZSOne Platform v0.4.3 — role-aware dashboard final polish. */
.zs-dashboard-onboarding{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:16px;padding:20px 22px;overflow:hidden;border:1px solid #e3ded3;border-radius:16px;background:linear-gradient(135deg,#fff 0%,#fbf8f1 100%);box-shadow:0 8px 28px rgba(35,38,43,.04)}
.zs-dashboard-onboarding:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#b48732}.zs-dashboard-onboarding.is-waiting:before{background:#77828c}.zs-dashboard-onboarding.is-ready:before{background:#4f825e}
.zs-dashboard-onboarding-icon{display:grid;place-items:center;width:54px;height:54px;border:1px solid #e8dcc3;border-radius:14px;background:#f7f1e5;color:#916a25}.zs-dashboard-onboarding-icon .auth-icon{width:24px;height:24px}.zs-dashboard-onboarding.is-waiting .zs-dashboard-onboarding-icon{border-color:#e0e3e5;background:#f1f3f4;color:#69757e}.zs-dashboard-onboarding.is-ready .zs-dashboard-onboarding-icon{border-color:#dce9df;background:#edf6ef;color:#4a7857}
.zs-dashboard-onboarding-copy{min-width:0}.zs-dashboard-onboarding-copy small{display:block;color:#9a7229;font-size:7px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.zs-dashboard-onboarding-copy h3{margin:5px 0 5px;color:#292d32;font-size:17px;line-height:1.24;letter-spacing:-.018em}.zs-dashboard-onboarding-copy p{max-width:760px;margin:0;color:#74797e;font-size:10px;line-height:1.6}
.zs-dashboard-onboarding-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:39px;padding:0 13px;border-radius:10px;background:#2f3339;color:#fff;text-decoration:none;font-size:9px;font-weight:850;white-space:nowrap}.zs-dashboard-onboarding-action .auth-icon{width:14px;height:14px}.zs-dashboard-onboarding-action:hover{background:#24282d}.zs-dashboard-onboarding-action.is-gold{background:#b48732}.zs-dashboard-onboarding-action.is-gold:hover{background:#9f762a}
.zs-dashboard-setup-rail{grid-column:2/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:3px}.zs-dashboard-setup-step{display:grid;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:8px;min-height:43px;padding:8px 9px;border:1px solid #e8e4dc;border-radius:10px;background:#fff}.zs-dashboard-setup-step>span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#f0f1f1;color:#757a7f}.zs-dashboard-setup-step>span .auth-icon{width:13px;height:13px}.zs-dashboard-setup-step small{display:block;color:#9a9da1;font-size:6px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.zs-dashboard-setup-step strong{display:block;margin-top:2px;color:#51565b;font-size:8px}.zs-dashboard-setup-step.is-ready{border-color:#dce9df;background:#f8fbf9}.zs-dashboard-setup-step.is-ready>span{background:#e6f2e9;color:#467553}.zs-dashboard-setup-step.is-current{border-color:#e0cc9f;background:#fffaf0}.zs-dashboard-setup-step.is-current>span{background:#f4e7ca;color:#8a6423}
.zs-dashboard-role-banner{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:16px;padding:13px 15px;border:1px solid #e5e0d6;border-radius:13px;background:#fff}.zs-dashboard-role-banner>span:first-child{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#f6f0e4;color:#916a24}.zs-dashboard-role-banner>span:first-child .auth-icon{width:18px;height:18px}.zs-dashboard-role-banner small{display:block;color:#979a9e;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.zs-dashboard-role-banner strong{display:block;margin-top:2px;color:#34383d;font-size:10px}.zs-dashboard-role-banner p{margin:4px 0 0;color:#85898e;font-size:8px;line-height:1.45}.zs-dashboard-role-banner>em{padding:6px 8px;border-radius:999px;background:#f3f0e9;color:#6f6250;font-size:7px;font-style:normal;font-weight:900;white-space:nowrap}.zs-dashboard-role-banner.is-viewer>span:first-child{background:#eef2f4;color:#61717c}.zs-dashboard-role-banner.is-viewer>em{background:#eef2f4;color:#61717c}
.zs-dashboard-portfolio-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:16px;margin-bottom:16px}.zs-dashboard-portfolio-grid>.zs-panel{min-width:0;overflow:hidden}
.zs-dashboard-kpis.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}.zs-dashboard-kpis .zs-dashboard-kpi-role strong{font-size:13px;line-height:1.2}.zs-dashboard-kpis .zs-dashboard-kpi-role small{margin-bottom:5px}
.zs-dashboard-realdata-note{display:flex;align-items:center;gap:7px;margin:-4px 0 16px;padding:0 2px;color:#8d9195;font-size:7px;line-height:1.45}.zs-dashboard-realdata-note .auth-icon{width:12px;height:12px;color:#8d6a2c}
.zs-dashboard-select-callout{display:flex;align-items:center;gap:12px;margin:0 16px 16px;padding:14px;border:1px solid #e5dfd3;border-radius:11px;background:#fbf8f1}.zs-dashboard-select-callout>span{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border-radius:10px;background:#f3ead7;color:#8f6825}.zs-dashboard-select-callout>span .auth-icon{width:17px;height:17px}.zs-dashboard-select-callout div{min-width:0;flex:1}.zs-dashboard-select-callout strong{display:block;color:#3e4247;font-size:10px}.zs-dashboard-select-callout p{margin:4px 0 0;color:#85898d;font-size:8px;line-height:1.5}
@media(max-width:1180px){.zs-dashboard-onboarding{grid-template-columns:52px minmax(0,1fr)}.zs-dashboard-onboarding-action{grid-column:2;justify-self:start}.zs-dashboard-setup-rail{grid-column:1/-1}.zs-dashboard-portfolio-grid{grid-template-columns:1fr}}
@media(max-width:760px){.zs-dashboard-onboarding{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:16px}.zs-dashboard-onboarding-icon{width:44px;height:44px}.zs-dashboard-onboarding-icon .auth-icon{width:20px;height:20px}.zs-dashboard-onboarding-copy h3{font-size:15px}.zs-dashboard-onboarding-action{grid-column:1/-1;width:100%}.zs-dashboard-setup-rail{grid-template-columns:1fr}.zs-dashboard-role-banner{grid-template-columns:38px minmax(0,1fr)}.zs-dashboard-role-banner>span:first-child{width:38px;height:38px}.zs-dashboard-role-banner>em{grid-column:2;justify-self:start}.zs-dashboard-kpis.is-three{grid-template-columns:1fr 1fr}.zs-dashboard-realdata-note{margin-top:-2px}}
@media(max-width:430px){.zs-dashboard-onboarding{grid-template-columns:1fr}.zs-dashboard-onboarding-icon{width:42px;height:42px}.zs-dashboard-onboarding-copy,.zs-dashboard-onboarding-action,.zs-dashboard-setup-rail{grid-column:1}.zs-dashboard-kpis.is-three{grid-template-columns:1fr}.zs-dashboard-role-banner{grid-template-columns:1fr}.zs-dashboard-role-banner>em{grid-column:1}.zs-dashboard-select-callout{align-items:flex-start}}

/* Shared brand and release indicator. The uploaded mark keeps its original colours. */
.auth-page .auth-brand{gap:9px}.auth-page .auth-brand img{width:36px;height:42px;object-fit:contain}.zs-brand-name{font-size:27px;font-weight:750;letter-spacing:-.04em;color:#b8842e;line-height:1}.zs-release{display:inline-flex;align-items:center;white-space:nowrap;padding:3px 6px;border:1px solid #e5dcc7;border-radius:5px;background:#faf6ed;color:#826527;font:600 10px/1.2 system-ui,sans-serif;letter-spacing:0;text-transform:none;vertical-align:middle}.auth-trust .zs-release{font-size:11px}.zs-profile-dropdown>.zs-release{margin:8px 12px}.zs-platform-heading .zs-release{margin-left:7px}.zs-sidebar-brand img,.zs-admin-brand img{box-sizing:border-box;background:#f7f5ee;padding:3px;border-radius:5px}.zs-admin-topbar .zs-release{flex:none}.zs-admin-denied main>img{display:block;width:58px;height:68px;object-fit:contain;margin:0 auto 12px}
@media(max-width:600px){.auth-page .auth-brand{gap:6px}.auth-page .auth-brand img{width:29px;height:34px}.auth-page .zs-brand-name{font-size:23px}.zs-admin-topbar .zs-release{font-size:9px;padding:3px 4px}}

.zs-platform-title-row>.zs-release{flex:none}.zs-profile-dropdown>.zs-release{margin:8px 12px}@media(max-width:600px){.zs-platform-title-row>.zs-release{font-size:9px;padding:3px 4px}}

/* Shared header notification inbox. */
.zs-notifications{position:relative;flex:0 0 auto}
.zs-notification-toggle{position:relative;display:grid;place-items:center;width:38px;height:38px;border:1px solid #e4dfd4;border-radius:8px;background:#fff;color:#725522;cursor:pointer}
.zs-notification-toggle:hover,.zs-notification-toggle[aria-expanded=true]{background:#fbf4e4;border-color:#c99b34}
.zs-notification-count{position:absolute;right:-5px;top:-5px;min-width:17px;padding:1px 4px;border:2px solid #fff;border-radius:20px;background:#bc861d;color:#fff;font:700 10px/15px system-ui;text-align:center}
.zs-notification-panel{position:absolute;top:calc(100% + 12px);right:0;width:390px;max-width:calc(100vw - 24px);max-height:min(650px,calc(100dvh - 90px));overflow:auto;background:#fff;border:1px solid #e7e1d7;border-radius:12px;box-shadow:0 16px 48px #20262b26;z-index:300;text-align:left;color:#26313c}
.zs-notification-panel[hidden],.zs-notification-count[hidden],.zs-notification-more[hidden],.zs-notification-state[hidden]{display:none}
.zs-notification-panel header{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid #eee9e1}
.zs-notification-panel header strong{display:block;font-size:15px}.zs-notification-panel header small{display:block;color:#778392;margin-top:3px;font-size:11px}
.zs-notification-panel button{font-family:inherit;cursor:pointer}.zs-notification-panel header button,.zs-notification-tools button{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e7e1d7;border-radius:6px;padding:6px 10px;color:inherit;font-size:12px}.zs-notification-panel header button{padding:5px}
.zs-notification-tools{display:flex;gap:6px;padding:10px 14px}.zs-notification-tools button[aria-pressed=true]{background:#faf0d8;border-color:#ddbc70;color:#855c14}.zs-notification-tools button:last-child{margin-left:auto;padding:5px 8px}
.zs-notification-state{padding:18px 16px;margin:0;color:#778392;font-size:12px}
.zs-notification-item{display:flex;align-items:center;border-top:1px solid #edf0f2;background:#fff}.zs-notification-item.is-unread{background:#fffaf0}
.zs-notification-open{flex:1;min-width:0;display:flex;gap:11px;padding:13px 14px;text-align:left;border:0;background:transparent;color:inherit}.zs-notification-open:hover{background:#f6f7f8}
.zs-notification-icon{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border-radius:8px;color:#ae7a1e;background:#f5eddd}.zs-notification-copy{display:grid;gap:4px;min-width:0}.zs-notification-copy small{font-size:11px;color:#9a6a17}.zs-notification-copy strong{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.zs-notification-copy>span,.zs-notification-copy time{font-size:11px;color:#738293;line-height:1.4;overflow-wrap:anywhere}
.zs-notification-read{flex:0 0 auto;margin-right:12px;border:1px solid #e5d5b2;background:#fff;border-radius:50%;width:26px;height:26px;color:#a2721e}
.zs-notification-more{display:block;width:calc(100% - 28px);margin:10px 14px;padding:9px;border:1px solid #e5dfd3;background:white;border-radius:6px;font-size:12px;color:#805e21}
.zs-notification-panel footer{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:12px 14px;background:#fff;border-top:1px solid #e9e4da}.zs-notification-panel footer button,.zs-notification-panel footer a{border:0;background:transparent;font-size:11px;color:#956a20;padding:0;text-decoration:none}.zs-notification-panel button:disabled{opacity:.5;cursor:default}
.zs-notification-panel button:focus-visible,.zs-notification-toggle:focus-visible{outline:2px solid #c7952d;outline-offset:2px}
@media(max-width:700px){.zs-notification-panel{position:fixed;top:68px;right:12px;width:390px}.zs-platform-actions{gap:7px}.zs-notification-toggle{width:34px;height:34px}}

.zs-notification-read{display:grid;place-items:center;padding:4px}.zs-notification-read .auth-icon{width:16px;height:16px}

/* Shared header inbox. Native dialog keeps it above every page and traps focus. */
dialog.zs-notification-panel{position:fixed;inset:0 0 0 auto;margin:0;width:min(580px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-left:1px solid #e4e7eb;border-radius:18px 0 0 18px;padding:0;overflow:hidden;box-shadow:-12px 0 55px #17233024;color:#25313c;background:#fff}
dialog.zs-notification-panel:not([open]){display:none}dialog.zs-notification-panel[open]{display:flex;flex-direction:column}
dialog.zs-notification-panel::backdrop{background:#19212b55;backdrop-filter:blur(3px)}
.zs-notification-panel header{padding:22px 24px;flex-shrink:0}.zs-notification-panel header strong{font-size:20px}.zs-notification-panel header small{font-size:12px}
.zs-notification-panel header button{width:36px;height:36px;border-radius:9px}
.zs-inbox-summary{padding:12px 24px;color:#7b6742;font-size:12px;background:#fcf9f2}
.zs-inbox-categories{display:flex;flex-wrap:wrap;gap:7px;padding:18px 24px 10px}
.zs-inbox-categories button{display:flex;align-items:center;gap:7px;min-height:32px;padding:7px 10px;border:1px solid #e5e8ec;border-radius:8px;background:#fff;color:#647080;font-size:12px}
.zs-inbox-categories button[aria-pressed=true]{color:#805a18;background:#faf0d9;border-color:#dab96f}.zs-inbox-categories small{border-radius:12px;padding:1px 5px;background:#eee7d8;color:#785714;font-weight:700}.zs-inbox-categories small[hidden]{display:none}
.zs-notification-tools{padding:10px 24px 16px;flex-wrap:wrap;flex-shrink:0;border-bottom:1px solid #edf0f2}.zs-notification-tools select{min-width:0;flex:1;width:120px;max-width:100%;border:1px solid #e4e7eb;border-radius:7px;padding:7px;background:white;font:12px inherit;color:#425363}
.zs-inbox-scroll{flex:1;overflow:auto;overscroll-behavior:contain;min-height:0}.zs-notification-state{padding:34px 24px;text-align:center}.zs-notification-item{margin:0 14px;border-radius:10px}.zs-notification-open{padding:16px 10px;gap:13px}.zs-notification-icon{position:relative;width:38px;height:38px;border-radius:11px}.zs-notification-copy{gap:5px}.zs-notification-copy strong{font-size:14px}.zs-notification-copy .zs-inbox-tag{font-size:10px;font-weight:700;letter-spacing:.2px}.zs-notification-copy>span{font-size:12px}.zs-notification-copy time{font-size:10px;margin-top:3px}.zs-notification-item.is-actionable{background:#f7f8fa}.zs-inbox-amount{position:absolute;right:-5px;bottom:-4px;background:#b58a32;color:#fff;border:2px solid white;border-radius:12px;min-width:18px;font-size:10px;text-align:center}
.zs-notification-panel footer{position:static;padding:16px 24px;align-items:center;flex-shrink:0}.zs-notification-panel footer button,.zs-notification-panel footer a{display:flex;align-items:center;gap:7px;min-height:34px}.zs-notification-panel footer a{width:34px;justify-content:center;border:1px solid #e4e7eb;border-radius:8px}.zs-notification-read{width:30px;height:30px;flex-basis:30px}.zs-notification-more{margin:18px 24px;width:calc(100% - 48px)}
@media(max-width:600px){dialog.zs-notification-panel{border-radius:0}.zs-inbox-categories{padding:12px 16px 6px}.zs-notification-panel header{padding:18px 16px}.zs-inbox-summary{padding:10px 16px}.zs-notification-tools{padding:10px 16px}.zs-notification-panel footer{padding:12px 16px}.zs-notification-item{margin:0 6px}}

.pp-account-position{display:grid;gap:7px;margin-bottom:22px;padding:16px 18px;background:#faf8f2;border:1px solid #e6dbc3;border-radius:10px}.pp-account-position>span{font-size:12px;color:#718096}.pp-account-position>strong{font-size:15px;color:#29333d}.pp-account-position>small{font-size:12px;color:#718096;line-height:1.6}
