/* Frozen JuWei A brand extension; existing module layouts and runtime IDs stay intact. */
.password-control{display:flex;gap:8px;align-items:stretch;min-width:0}.password-control input{min-width:0;flex:1}.password-toggle{min-width:88px;min-height:44px;padding:8px;font-size:.875rem;white-space:nowrap}.nav-mask{display:none}.overview-section{overflow:hidden}
#overview>button{margin-bottom:18px}.overview-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:22px;align-items:start}.overview-section{margin-bottom:0;min-width:0}.overview-section[data-category=todaytasks],.overview-section[data-category=overdue],.overview-section[data-category=weekplan]{grid-column:1}.overview-section[data-category=pendingreview]{grid-column:2;grid-row:1}.overview-section[data-category=recentmeetings]{grid-column:2;grid-row:2}.overview-shortcuts{grid-column:2;grid-row:3;padding:20px;display:grid;gap:12px}.overview-shortcuts h2{margin:0}.overview-shortcuts a{min-height:44px}
@media(max-width:850px){.overview-layout{grid-template-columns:1fr;gap:18px}.overview-layout>.overview-section,.overview-layout>.overview-shortcuts{grid-column:auto;grid-row:auto}}
@media(max-width:850px){.nav-mask:not([hidden]){display:block;position:fixed;inset:0;width:100%;height:100%;border:0;border-radius:0;background:rgba(15,37,53,.38);z-index:9}.sidebar.open{animation:drawer-open .2s ease-out}.password-toggle{min-width:80px}}
@keyframes drawer-open{from{transform:translateX(-16px);opacity:.75}to{transform:translateX(0);opacity:1}}
:root{color:#173344;background:#f1f5f8;--ink:#173344;--muted:#536978;--line:#dbe4ea;--soft:#f1f5f8;--teal:#126e86;--teal-dark:#084861;--pale:#e7f2f6;--radius:14px}
::selection{background:#b5dce9;color:var(--ink)}:focus-visible{outline-color:#147b99}
.sidebar{background:#eaf0f5;padding-top:26px}.side-logo{display:block;width:76px;height:76px;object-fit:contain;border-radius:10px;margin-bottom:14px}.nav a{color:#3c596d;min-height:48px}.nav a:hover{background:#dce8f0}.nav a[aria-current=page]{background:#d3e7ef;color:#084861}.topbar{min-height:76px;padding-inline:30px}.content{padding:30px;max-width:1260px}.heading-row{margin-bottom:26px}.heading-row h1{font-size:1.55rem}.secondary{border-color:#b9ced9}.secondary:hover,.text-button:hover{background:#edf5f9}.field input,.field select,.field textarea{border-color:#aebfc9}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 3px #d3e7ef}.row:hover{background:#f5f9fb}.row.selected{background:#e7f2f6}.notice.info{background:#e7f1f6;color:#24566e}.feedback{background:#173e54}.section p{color:#3b5669}
.site-head{max-width:1180px;margin:auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:12px}.site-head>a{display:flex;align-items:center;min-height:44px;white-space:nowrap}.brand-line{display:flex;align-items:center;gap:12px;min-width:0}.mini-logo{width:50px;height:50px;object-fit:contain;border-radius:9px;flex:none}
.auth-page .app{display:block;min-height:0}.auth-page .sidebar,.auth-page .mobile-head,.auth-page .mobile-company,.auth-page .topbar{display:none!important}.auth-page .content{padding:0;max-width:1080px;margin:24px auto 60px;display:grid;grid-template-columns:1fr 1fr;min-height:600px;background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.auth-story{padding:54px 44px;background:#e9f1f6;display:flex;flex-direction:column;justify-content:center}.auth-logo{width:172px;height:172px;object-fit:contain;border-radius:14px;margin-bottom:32px}.auth-story h2{font-size:1.85rem;line-height:1.4;margin-bottom:12px}.auth-story>p{color:#426172;line-height:1.8;max-width:26em}.story-list{margin:24px 0 0;padding:0;list-style:none;color:#365769}.story-list li{padding:12px 0}.auth-story .story-foot{margin-top:34px;font-size:.875rem;color:#526a7a}.auth-form{padding:54px 48px;display:flex;flex-direction:column;justify-content:center;min-width:0}.auth-form .heading-row{margin-bottom:0}.auth-form h1{font-size:1.65rem}.auth-page .auth-panel{padding:0;margin:0;border:0;max-width:none}.auth-panel .field{font-weight:600;gap:8px}.auth-panel .form-grid{gap:20px;margin-top:20px}.auth-panel input{min-height:48px;padding:10px 14px}.auth-panel .form-actions{display:grid;gap:20px;margin-top:26px}.auth-panel .form-actions>.primary{width:100%;min-height:46px}.auth-panel .auth-divider{border-top:1px solid var(--line);padding-top:20px}.auth-divider p,.auth-legal{font-size:.875rem;color:var(--muted)}.auth-divider a{display:inline-flex;align-items:center;min-height:44px}.auth-legal{margin:22px 0 0;line-height:1.65}
.auth-panel .auth-divider{margin-top:26px}
@media(max-width:1100px){.auth-page .content{margin:20px 24px 40px}.auth-story,.auth-form{padding:40px 30px}}
@media(max-width:850px){.content{padding:22px 16px 34px}.heading-row h1{font-size:1.4rem}.mobile-head{align-items:center}.mobile-title{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:10px}.mobile-title::before{content:"";grid-row:1/3;width:44px;height:44px;border-radius:7px;background:url('/opc-workspace/static/workspace/juwei-logo.jpg') center/contain no-repeat}.site-head{padding:16px 20px}.site-head .brand{font-size:1rem}.mini-logo{width:44px;height:44px}.auth-page .content{grid-template-columns:1fr;min-height:0;margin:10px 16px 28px}.auth-story{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px 16px;padding:20px 24px}.auth-logo{width:84px;height:84px;margin:0}.auth-story h2{font-size:1.12rem;line-height:1.6;align-self:center;margin:0}.auth-story>p{grid-column:1/-1;font-size:.875rem;margin:0}.story-list,.auth-story .story-foot{display:none}.auth-form{padding:24px}.auth-form h1{font-size:1.4rem}.auth-panel .form-grid{gap:16px;margin-top:16px}.auth-panel .form-actions{margin-top:18px}.auth-legal{margin-top:16px}}
@media(max-width:360px){.content{padding-inline:12px}.site-head{padding-inline:12px}.brand-line{gap:8px}.site-head .mini-logo{display:none}.auth-page .content{margin-inline:12px}.auth-story,.auth-form{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Client-only summary: authorization-wide counts, scoped status navigation. */
.client-stats{margin-bottom:26px}.client-stat-heading{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:12px;flex-wrap:wrap}.client-stat-heading h2{font-size:1rem;margin:0}.client-stat-heading .helper{margin:0}.client-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.client-stat{display:grid;gap:10px;min-width:0;padding:20px 22px;text-align:left;color:var(--ink);background:white;border:1px solid var(--line);border-radius:var(--radius);transition:border-color .18s ease,background-color .18s ease}.client-stat:disabled,.client-stat-chip:disabled{cursor:wait;opacity:1}.client-stat:not(:disabled):hover{border-color:#6fa6ba;background:#f7fbfd}.client-stat[aria-pressed=true]{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.client-stat-label{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:650}.client-stat-dot{width:8px;height:8px;background:#217caa;border-radius:50%;flex:none}.client-stat-dot.deal{background:#228267}.client-stat-value{display:flex;align-items:baseline;gap:8px}.client-stat-value strong{font-size:2.35rem;line-height:1.1;font-weight:700;letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.client-stat-value>span{font-size:.875rem;color:var(--muted)}.client-stat-hint{display:flex;justify-content:space-between;gap:8px;font-size:.875rem;color:var(--muted)}.client-stat-total{background:#e7f2f6;color:var(--teal-dark)}.client-stat-footer{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;margin-top:10px}.client-stat-chips{display:flex;gap:8px;flex-wrap:wrap}.client-stat-chip{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--muted);font-size:.875rem}.client-stat-chip strong{color:var(--ink);font-variant-numeric:tabular-nums}.client-stat-chip[aria-pressed=true]{border-color:var(--teal);background:var(--pale);color:var(--teal-dark)}.client-stat-chip:not(:disabled):hover{border-color:#6fa6ba}.client-stat-footer>.helper{margin:0}.client-stat:focus-visible,.client-stat-chip:focus-visible{outline:3px solid #147b99;outline-offset:3px}
@media(max-width:850px){.client-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-stat-total{grid-column:1/-1;grid-template-columns:1fr auto;align-items:center}.client-stat-total .client-stat-value{grid-column:2;grid-row:1/3}.client-stat-total .client-stat-hint{grid-column:1}.client-stat{padding:16px;gap:8px}.client-stat-value strong{font-size:2rem}.client-stat-footer{align-items:flex-start}.client-stat-heading .helper{font-size:.875rem}.app.detail-open .client-stats{display:none}}
@media(max-width:360px){.client-stat{padding:14px 12px}.client-stat-hint{font-size:.875rem}.client-stat-value strong{font-size:1.85rem}}
