/* Shared C design: all screen pages, role-specific navigation stays server-rendered. */
body.site-c,body.site-public { --color-secondary:#326ca4; --color-secondary-hover:#245d97; --color-secondary-soft:#edf6ff; --color-border:#dce5ef; --color-border-light:#e5edf4; --shadow-card:0 5px 20px #284c7210; font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; color:#243044; font-size:14px; line-height:1.65; }
body.site-public { background:linear-gradient(90deg,#e5f2ff,#ffe9d9 60%,#fff4cf)!important; }
body.site-c h1,body.site-public h1 { font-size:clamp(22px,2.1vw,28px); line-height:1.4; }
body.site-c h2,body.site-public h2 { font-size:clamp(16px,1.5vw,20px); line-height:1.5; }
body.site-c .card,body.site-c .card-shelf { border-color:#dce5ef; box-shadow:0 5px 20px #284c7210; }
body.site-c main>div.min-h-screen { background:transparent; }
/* C review: existing navigation becomes a sidebar; A/B remain unchanged. */
@media(min-width:768px) {
 body.site-c { --pc-nav-width:212px; }
 body.site-c>nav {
  position:fixed; inset:0 auto 0 0; width:var(--pc-nav-width); height:100dvh;
  background:linear-gradient(180deg,#ffffff,#fffdf7); border-right:1px solid #e6e9e7;
  box-shadow:3px 0 24px #263b5010;
 }
 body.site-c>nav>div:first-child {
  height:100%; padding:32px 18px 24px; display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:0;
 }
 body.site-c>nav>div:first-child>a { justify-content:center; }
 body.site-c>nav>div:first-child>a img { width:158px; height:auto; }
 body.site-c>nav>div:first-child>div:nth-child(2) {
  display:flex; flex-direction:column; align-items:stretch; gap:8px; margin-top:46px;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)::before {
  content:none; color:#8793a2; font-size:11px; letter-spacing:1px; padding:0 14px 8px;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a {
  display:flex; align-items:center; min-height:46px; padding:10px 16px; border-radius:12px; font-size:14px; font-weight:550; border:1px solid transparent;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a:hover { background:#fff7e9; }
 body.site-c>nav>div:first-child>div:nth-child(2)>a.text-orange-600 {
  background:linear-gradient(110deg,#fff0d9,#fff8ec); border-color:#f6dfbc; color:#b85b1e;
 }
 body.site-c>nav>div:first-child>div:nth-child(3) {
  margin-top:auto; padding-top:22px; border-top:1px dashed #dbe2df; display:flex; flex-wrap:wrap; gap:10px; justify-content:center;
 }
 body.site-c>nav>div:first-child>div:nth-child(3)>a { font-size:13px; padding:8px 12px; }
 body.site-c>nav>div:first-child>div:nth-child(3) .absolute { bottom:52px; top:auto; left:0; right:auto; }
 
 body.site-c>main { margin-left:var(--pc-nav-width); }
 body.site-c .parent-center .pc-container { max-width:1256px; padding-top:28px; }
}
@media(min-width:768px) and (max-width:1100px) {
 body.site-c { --pc-nav-width:176px; }
 body.site-c>nav>div:first-child { padding-left:12px; padding-right:12px; }
 body.site-c>nav>div:first-child>a img { width:140px; }
 body.site-c .parent-center .top-row-grid.pc-dashboard-grid { display:flex; flex-direction:column; }
 body.site-c .parent-center .pc-main-column,body.site-c .parent-center .pc-side-column { display:flex; width:100%; min-width:0; }
 body.site-c .parent-center .pc-side-column { flex-direction:column; }
 body.site-c .parent-center .pc-side-column>.pc-panel { width:100%; }
 body.site-c .parent-center #bottom-analytics-grid>.card,body.site-c .parent-center #weekly-trend-card>.card { flex-basis:100%; width:100%; }
}
@media(max-width:767px) {
 body.site-c>nav>div:nth-child(2) {
  position:absolute; left:0; top:100%; bottom:auto; width:min(290px,85vw); max-height:calc(100dvh - 90px); overflow-y:auto;
  border-right:1px solid #e5eae7; box-shadow:16px 0 45px #263b5024; border-radius:0 18px 18px 0;
 }
 body.site-c>nav>div:nth-child(2)>div { padding:18px; gap:4px; }
 body.site-c>nav>div:nth-child(2) a { font-size:14px; padding:12px; border-radius:10px; }
 body.site-c>nav>div:nth-child(2) a.text-orange-600 { background:#fff3df; }
}

/* C: continuous canvas across navigation and content. */
body.site-c {
 background:linear-gradient(90deg,#e5f2ff 0%,#eaf3ff 24%,#ffe9d9 60%,#fff4cf 100%);
 background-attachment:fixed;
}
body.site-c .parent-center { background:transparent; }


@media(min-width:768px) {
 body.site-c>nav {
  background:linear-gradient(90deg,rgba(255,255,255,.48),rgba(255,255,255,0));
  border-right:0; box-shadow:none;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a.text-orange-600 {
  background:rgba(255,255,255,.68); border-color:#c5dcf1; color:#2865a1;
  box-shadow:0 3px 10px #366b9b08;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a:hover { background:#ffffff80; color:#2865a1; }
 body.site-c>nav>div:first-child>div:nth-child(3) { border-color:#c8dbeb; }
}
@media(max-width:767px) {
 body.site-c>nav { background:#f0f7ff; box-shadow:0 1px 0 #dce8f3; }
 body.site-c>nav>div:nth-child(2) { background:#f5f9ff; border-color:#ccdfef; }
 body.site-c>nav>div:nth-child(2) a.text-orange-600 { background:#e1efff; color:#2865a1; }
}

/* C mobile: fixed bottom primary navigation, secondary links above More. */
@media(max-width:767px) {
 body.site-c>nav>div:first-child>div:nth-child(2) {
  display:flex; position:fixed; inset:auto 0 0; height:calc(70px + env(safe-area-inset-bottom, 0px));
  padding:6px 68px calc(6px + env(safe-area-inset-bottom, 0px)) 6px; gap:2px;
  background:#ffffffed; backdrop-filter:blur(16px); border-top:1px solid #d8e5f1;
  box-shadow:0 -4px 20px #345a7810; align-items:stretch;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a {
  flex:1; min-width:0; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:4px;
  border-radius:12px; font-size:11px; font-weight:600; color:#697b8f; white-space:nowrap;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a::before {
  content:""; width:22px; height:22px; background:currentColor;
  mask:center / contain no-repeat var(--pc-nav-icon); -webkit-mask:center / contain no-repeat var(--pc-nav-icon);
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a.text-orange-600 { background:#e7f1ff; color:#2865a1; }
 body.site-c>nav>div:first-child>div:nth-child(4)>button {
  position:fixed; bottom:calc(6px + env(safe-area-inset-bottom, 0px)); right:6px; width:56px; height:58px;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; color:#697b8f;
 }
 body.site-c>nav>div:first-child>div:nth-child(4)>button::after { content:"更多"; font-size:11px; font-weight:600; }
 body.site-c>nav>div:nth-child(2) {
  position:fixed; left:auto; right:12px; top:auto; bottom:calc(80px + env(safe-area-inset-bottom, 0px));
  max-height:calc(100dvh - 180px - env(safe-area-inset-bottom, 0px)); width:min(290px,85vw); border-radius:18px;
  border:1px solid #d8e5f1; box-shadow:0 -8px 36px #263b5020;
 }
 body.site-c .parent-center .pc-container { padding-bottom:calc(110px + env(safe-area-inset-bottom, 0px)); }
 body.site-c #feedback-fab { bottom:calc(86px + env(safe-area-inset-bottom, 0px))!important; }
}
@media(max-width:767px) { body.site-c #feedback-fab { z-index:40!important; } }

/* Layout guardrails for every page, including narrower standalone page containers. */
@media(min-width:768px) {
 body.site-c>main { max-width:none; width:calc(100% - var(--pc-nav-width)); margin:0 0 0 var(--pc-nav-width); padding:28px clamp(20px,3vw,48px); min-width:0; }
 body.site-c>main:has(>.parent-center) { padding:0; }
 body.site-c>nav>div:first-child>div:nth-child(3) .absolute { left:auto; right:0; }
}
@media(max-width:767px) {
 body.site-c>main { margin:0; width:100%; padding:24px 16px calc(110px + env(safe-area-inset-bottom,0px)); }
 body.site-c>main:has(>.parent-center) { padding:0; }
 body.site-c>nav>div:first-child { padding:16px; }
 body.site-c #feedback-fab { top:auto!important; bottom:calc(86px + env(safe-area-inset-bottom,0px))!important; }
 body.site-c main .fixed.bottom-0 { bottom:calc(70px + env(safe-area-inset-bottom,0px)); }
 body.site-c main .fixed.bottom-6 { bottom:calc(94px + env(safe-area-inset-bottom,0px)); }
}
@media print {
 body.site-c { background:white!important; }
 body.site-c>nav,body.site-c #feedback-fab,body.site-c #feedback-hint { display:none!important; }
 body.site-c>main { margin:0!important; padding:0!important; width:100%!important; max-width:none!important; }
}

body.site-c .site-brand { flex-direction:column; gap:8px; }
.site-brand-tagline { font-size:11px; line-height:1.5; font-weight:400; letter-spacing:1.2px; color:#75879c; }
@media(max-width:767px) { body.site-c .site-brand { gap:4px; } .site-brand-tagline { font-size:10px; letter-spacing:1px; } }

/* Primary navigation shares the same icons across desktop and mobile. */
 body.site-c>nav>div:first-child>div:nth-child(2)>a:nth-child(1) { --pc-nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1'/%3E%3C/svg%3E"); }
 body.site-c>nav>div:first-child>div:nth-child(2)>a:nth-child(2) { --pc-nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m7 12 3 3 7-7'/%3E%3C/svg%3E"); }
 body.site-c>nav>div:first-child>div:nth-child(2)>a:nth-child(4) { --pc-nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Crect x='5' y='3' width='14' height='18' rx='2'/%3E%3Cpath d='M5 17h14M9 7h6M9 11h6'/%3E%3C/svg%3E"); }
 body.site-c>nav>div:first-child>div:nth-child(2)>a:nth-child(5) { --pc-nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M4 10h16v11H4zM3 6h18v4H3zM12 6v15M12 6C5 6 6 0 9 3l3 3c7 0 6-6 3-3z'/%3E%3C/svg%3E"); }
body.site-c>nav>div:first-child>div:nth-child(2)::before { content:none!important; display:none; }
@media(min-width:768px) {
 body.site-c>nav>div:first-child>div:nth-child(2)>a { gap:12px; }
 body.site-c>nav>div:first-child>div:nth-child(2)>a::before {
  content:""; width:20px; height:20px; flex:none; background:currentColor;
  mask:center / contain no-repeat var(--pc-nav-icon); -webkit-mask:center / contain no-repeat var(--pc-nav-icon);
 }
}

/* Sidebar selection: wider blue surface, soft shadow and leading marker. */
@media(min-width:768px) {
 body.site-c>nav>div:first-child>div:nth-child(2) { margin-left:-6px; margin-right:-6px; gap:10px; }
 body.site-c>nav>div:first-child>div:nth-child(2)>a {
  position:relative; min-height:58px; padding:12px 20px; border-radius:18px;
  transition:background .18s ease,box-shadow .18s ease,color .18s ease;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a.text-orange-600 {
  background:linear-gradient(105deg,#d3e6fa,#e4f0fc); border-color:transparent; color:#2466a6;
  box-shadow:0 10px 24px -8px rgba(47,113,181,.38),0 3px 8px rgba(47,113,181,.08);
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a.text-orange-600::after {
  content:""; position:absolute; left:0; top:14px; bottom:14px; width:4px;
  border-radius:0 4px 4px 0; background:#327ab9;
 }
 body.site-c>nav>div:first-child>div:nth-child(2)>a:focus-visible { outline:2px solid #327ab9; outline-offset:3px; }
}

body.site-c>nav>div:first-child>div:nth-child(2)>a:nth-child(3) { --pc-nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V3m-5 5 5-5 5 5M4 14v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5'/%3E%3C/svg%3E"); }
