﻿/* ============================================================
   妯℃湳鎬濈粓绔湇鍔″钩鍙?路 鍏ㄧ珯鍏叡缁勪欢 platform.css
   鎵€鏈夌郴缁熼〉闈㈢粺涓€寮曠敤锛氶《閮ㄦí鐪?/ 鐧诲綍娉ㄥ唽寮圭獥 / 鏉冮檺鎻愮ず鏉?
   ============================================================ */
#pms-nav{
  position:fixed;top:0;left:0;right:0;z-index:99999;
  height:54px;display:flex;align-items:center;gap:18px;
  padding:0 22px;
  background:linear-gradient(90deg,#152E47 0%,#1E3D5C 52%,#1F5E96 100%);
  box-shadow:0 2px 10px rgba(21,46,71,.32);
  font-family:"Microsoft YaHei","PingFang SC",sans-serif;
}
#pms-nav *{box-sizing:border-box;}
#pms-nav a{text-decoration:none;color:inherit;}
.pms-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;cursor:pointer;}
.pms-brand img{width:36px;height:36px;border-radius:8px;background:#fff;padding:3px;display:block;}
.pms-brand .pms-bt{display:flex;flex-direction:column;line-height:1.15;}
.pms-brand .pms-bt b{color:#E9D6A8;font-size:17px;font-weight:700;letter-spacing:1px;}
.pms-brand .pms-bt span{color:#A9BED6;font-size:10.5px;letter-spacing:.4px;}
.pms-menu{display:flex;align-items:center;gap:4px;margin-left:8px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;}
#pms-nav .pms-menu::-webkit-scrollbar{display:none;}
#pms-nav .pms-menu a{
  color:#D8E3F1;font-size:14px;padding:7px 12px;border-radius:7px;
  white-space:nowrap;transition:background .15s,color .15s;flex-shrink:0;
}
#pms-nav .pms-menu a:hover{background:rgba(255,255,255,.14);color:#fff;}
#pms-nav .pms-menu a.on{background:rgba(255,255,255,.2);color:#fff;font-weight:600;}
.pms-actions{display:flex;align-items:center;gap:9px;flex-shrink:0;}
.pms-btn{
  display:inline-block;border:none;cursor:pointer;font-family:inherit;
  font-size:13.5px;padding:7px 15px;border-radius:7px;white-space:nowrap;
  transition:transform .12s,box-shadow .12s,background .15s;
}
.pms-btn:active{transform:translateY(1px);}
.pms-btn-ghost{background:transparent;color:#fff;border:1.4px solid rgba(255,255,255,.75);}
.pms-btn-ghost:hover{background:rgba(255,255,255,.14);}
.pms-btn-solid{background:#fff;color:#1E3D5C;font-weight:600;}
.pms-btn-solid:hover{box-shadow:0 3px 10px rgba(0,0,0,.18);}
.pms-btn-admin{background:rgba(255,214,107,.14);color:#FFE3A3;border:1.4px solid rgba(255,214,107,.7);}
.pms-btn-admin:hover{background:rgba(255,214,107,.26);color:#FFEFC4;}
.pms-btn-vip{background:linear-gradient(135deg,#f7c948,#e0a92e);color:#5b3d00;border:1.4px solid #f3d27a;font-weight:700;box-shadow:0 2px 8px rgba(224,169,46,.35);}
.pms-btn-vip:hover{background:linear-gradient(135deg,#ffd75e,#e8b53a);box-shadow:0 3px 12px rgba(224,169,46,.5);}
.pms-user{display:flex;align-items:center;gap:9px;}
.pms-user .pms-uname{color:#fff;font-size:14px;display:flex;align-items:center;gap:6px;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pms-role{font-size:11px;padding:2px 8px;border-radius:20px;background:rgba(255,255,255,.2);color:#fff;white-space:nowrap;}
.pms-role.super{background:#FFD66B;color:#7a5200;font-weight:600;}
.pms-role.mgr{background:#fff;color:#1E3D5C;font-weight:600;}
.pms-role.site{background:#cfe0ff;color:#1c3f7a;font-weight:600;}
.pms-role.vip{background:linear-gradient(135deg,#f7c948,#e0a92e);color:#5b3d00;font-weight:700;}
.pms-logout{color:rgba(255,255,255,.85);font-size:12.5px;cursor:pointer;padding:4px 6px;}
.pms-logout:hover{color:#fff;text-decoration:underline;}

/* 鏉冮檺鎻愮ず鏉?*/
#pms-banner{
  position:fixed;top:54px;left:0;right:0;z-index:99998;
  display:none;align-items:center;justify-content:center;gap:12px;
  padding:8px 18px;font-size:13px;font-family:"Microsoft YaHei","PingFang SC",sans-serif;
  background:linear-gradient(90deg,#FFF7E0,#FFF3D6);color:#8a5a00;
  border-bottom:1px solid #F2D58A;text-align:center;
}
#pms-banner.show{display:flex;}
#pms-banner b{color:#6b4400;}
#pms-banner .pms-bbtn{
  background:#1F5E96;color:#fff;border:none;cursor:pointer;font-size:12.5px;
  padding:5px 14px;border-radius:6px;white-space:nowrap;font-family:inherit;
}
#pms-banner .pms-bbtn.gray{background:#8a8a8a;}

/* 鐧诲綍/娉ㄥ唽寮圭獥 */
#pms-mask{
  position:fixed;inset:0;z-index:999999;display:none;
  background:rgba(12,28,46,.55);backdrop-filter:blur(2px);
  align-items:center;justify-content:center;font-family:"Microsoft YaHei","PingFang SC",sans-serif;
}
#pms-mask.show{display:flex;}
.pms-modal{
  width:380px;max-width:92vw;background:#fff;border-radius:14px;overflow:hidden;
  box-shadow:0 18px 60px rgba(0,0,0,.28);animation:pmsPop .18s ease;
}
@keyframes pmsPop{from{transform:translateY(14px);opacity:0;}to{transform:none;opacity:1;}}
.pms-modal .pms-mhead{
  background:linear-gradient(90deg,#152E47,#1F5E96);color:#fff;
  padding:18px 24px;display:flex;align-items:center;justify-content:space-between;
}
.pms-modal .pms-mhead b{font-size:18px;letter-spacing:1px;}
.pms-modal .pms-mhead span{cursor:pointer;font-size:20px;line-height:1;opacity:.85;}
.pms-modal .pms-mhead span:hover{opacity:1;}
.pms-modal .pms-mbody{padding:22px 24px 24px;}
.pms-field{margin-bottom:14px;}
.pms-field label{display:block;font-size:13px;color:#444;margin-bottom:6px;}
.pms-field input{
  width:100%;padding:10px 12px;border:1.4px solid #d4dce5;border-radius:8px;
  font-size:14.5px;font-family:inherit;outline:none;transition:border-color .15s;
}
.pms-field input:focus{border-color:#1F5E96;}
.pms-msubmit{
  width:100%;padding:11px;border:none;border-radius:8px;cursor:pointer;
  background:linear-gradient(90deg,#152E47,#1F5E96);color:#fff;font-size:15px;
  font-weight:600;letter-spacing:2px;font-family:inherit;margin-top:4px;
}
.pms-msubmit:hover{filter:brightness(1.06);}
.pms-msubmit:disabled{opacity:.6;cursor:not-allowed;}
.pms-mtip{text-align:center;font-size:13px;color:#777;margin-top:14px;}
.pms-mtip a{color:#1F5E96;cursor:pointer;font-weight:600;}
.pms-merr{color:#e03a3a;font-size:13px;min-height:18px;margin:2px 0 8px;display:none;}
.pms-merr.show{display:block;}
.pms-mnote{font-size:12px;color:#999;margin-top:10px;line-height:1.6;text-align:center;}

/* 杞绘彁绀?toast */
#pms-toast{
  position:fixed;left:50%;top:74px;transform:translateX(-50%) translateY(-16px);
  z-index:9999999;background:rgba(20,30,26,.92);color:#fff;padding:10px 22px;
  border-radius:9px;font-size:14px;opacity:0;pointer-events:none;transition:all .25s;
  font-family:"Microsoft YaHei","PingFang SC",sans-serif;max-width:86vw;text-align:center;
}
#pms-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

/* ============ 澶村儚鑿滃崟锛堝晢涓氬寲 v2锛?============ */
.pms-user{position:relative;display:flex;align-items:center;flex-shrink:0;}
.pms-avatar{
  display:flex;align-items:center;gap:6px;border:none;cursor:pointer;font-family:inherit;
  background:rgba(255,255,255,.14);color:#fff;border-radius:22px;
  padding:5px 12px 5px 6px;font-size:13.5px;transition:background .15s;
}
.pms-avatar:hover{background:rgba(255,255,255,.26);}
.pms-ava-ico{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#0e9488,#0a6b62);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;box-shadow:0 2px 6px rgba(14,148,136,.35)}
.pms-ava-name{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pms-ava-caret{font-size:10px;opacity:.8;}
.pms-pop{
  position:absolute;top:calc(100% + 10px);right:0;z-index:999999;
  min-width:218px;background:#fff;border-radius:12px;box-shadow:0 14px 44px rgba(15,35,58,.26);
  padding:7px;display:none;font-family:"Microsoft YaHei","PingFang SC",sans-serif;
  animation:pmsPop .16s ease;border:1px solid #e8edf3;
}
.pms-pop.show{display:block;}
.pms-pop-head{
  display:flex;align-items:center;gap:8px;padding:10px 12px 9px;border-bottom:1px solid #eef2f7;margin-bottom:5px;
}
.pms-pop-head b{font-size:14.5px;color:#152E47;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pms-pop-item{
  display:block;padding:10px 12px;border-radius:8px;color:#33475f;font-size:14px;
  cursor:pointer;text-decoration:none;transition:background .13s;
}
.pms-pop-item:hover{background:#f2f6fb;color:#1F5E96;}
.pms-pop-info{padding:9px 12px;border-radius:8px;font-size:12.5px;color:#8a6a1f;background:#FFF7E0;margin:2px 0;}
.pms-pop-danger{color:#d64545;}
.pms-pop-danger:hover{background:#fdf0f0;color:#c22;}
/* 淇敼瀵嗙爜寮圭獥閬僵锛堢嫭绔嬩簬鐧诲綍寮圭獥锛?*/
.pms-mask-like{
  position:fixed;inset:0;z-index:999999;display:none;
  background:rgba(12,28,46,.55);backdrop-filter:blur(2px);
  align-items:center;justify-content:center;font-family:"Microsoft YaHei","PingFang SC",sans-serif;
}
.pms-mask-like.show{display:flex;}

/* 绉诲姩绔?*/
@media (max-width:860px){
  .pms-ava-name{max-width:64px;font-size:12.5px;}
  .pms-avatar{padding:4px 9px 4px 4px;}
  .pms-pop{right:0;min-width:200px;}

  #pms-nav{padding:0 10px;gap:8px;height:50px;}
  #pms-nav .pms-brand img{width:30px;height:30px;}
  .pms-brand .pms-bt b{font-size:14.5px;}
  .pms-brand .pms-bt span{display:none;}
  .pms-menu{order:3;flex-basis:100%;position:absolute;top:50px;left:0;right:0;background:#1E3D5C;margin:0;padding:4px 8px;display:none;}
  #pms-nav.menu-open .pms-menu{display:flex;}
  .pms-actions{gap:6px;margin-left:auto;}
  .pms-btn{padding:6px 10px;font-size:12.5px;}
  .pms-user .pms-uname{max-width:72px;font-size:13px;}
  .pms-role{display:none;}
  #pms-banner{top:50px;font-size:12px;flex-wrap:wrap;padding:7px 12px;}
  body.pms-body{padding-top:50px !important;}
}

/* ===== 澶村儚娴眰路绉垎鏄庣粏鐗堬紙2026-11-05 缁熶竴锛?===== */
.pms-ava-ico{width:26px;height:26px;border-radius:50%;display:inline-block;line-height:26px;text-align:center;overflow:hidden;background-position:center;background-size:cover;}
.pms-pop{padding:0 !important;width:330px;max-width:calc(100vw - 20px);overflow:hidden;}
.pp-head{display:flex;align-items:center;gap:10px;padding:14px 16px 10px;}
.pp-ava.pms-ava-ico{width:38px;height:38px;line-height:38px;font-size:19px;background:#eef3fa;}
.pp-id b{font-size:14.5px;color:#12253d;}
.pp-pts{font-size:12.5px;color:#7b8798;margin-top:2px;}
.pp-pts em{font-style:normal;font-size:16px;font-weight:800;color:#0b63c5;}
.pp-logbar{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;border-top:1px solid #f0f4f9;}
.pp-title{font-size:12.5px;color:#7b8798;}
.pp-tabs{display:flex;gap:4px;}
.pp-tabs button{border:1px solid #e3eaf3;background:#fff;color:#5b6b80;font-size:12px;padding:3px 10px;border-radius:11px;cursor:pointer;font-family:inherit;}
.pp-tabs button.on{background:#0b63c5;border-color:#0b63c5;color:#fff;}
.pp-logs{max-height:232px;overflow-y:auto;padding:2px 8px;}
.pp-row{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:7px 8px;border-bottom:1px dashed #eef2f7;}
.pp-rsn{font-size:13px;color:#22364f;}
.pp-chg{font-size:13px;font-weight:700;text-align:right;}
.pp-chg.in{color:#0f9d58;}
.pp-chg.out{color:#e5484d;}
.pp-rs{font-size:11.5px;color:#9aa6b6;}
.pp-bal{font-size:11.5px;color:#9aa6b6;text-align:right;}
.pp-empty{padding:18px 10px;text-align:center;color:#9aa6b6;font-size:12.5px;}
.pp-acts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:10px 14px 12px;border-top:1px solid #f0f4f9;}
.pp-acts button{border:1px solid #e3eaf3;background:#fbfdff;color:#2b4360;font-size:12.5px;padding:9px 4px;border-radius:10px;cursor:pointer;font-family:inherit;}
.pp-acts button:hover{border-color:#9cc3f0;background:#f2f8ff;color:#0b63c5;}
.pp-links{display:flex;justify-content:space-between;padding:0 18px 12px;}
.pp-links a{font-size:12.5px;color:#5b6b80;text-decoration:none;cursor:pointer;}
.pp-links a:hover{color:#0b63c5;}
.pp-links a.danger{color:#e5484d;}

/* ===== 头像浮层·与工作台完全一致（2026-11-05） ===== */
.pms-ava-ico{width:26px;height:26px;border-radius:50%;display:inline-block;line-height:26px;text-align:center;overflow:hidden;background-position:center;background-size:cover;}
.pms-pop{padding:0 !important;width:330px;max-width:calc(100vw - 20px);border-radius:14px;overflow:hidden;}
.pp-head{display:flex;align-items:center;gap:12px;padding:16px 16px 12px;}
.pp-ava.pms-ava-ico{width:46px;height:46px;line-height:46px;font-size:24px;flex:none;background:#f1f5f9;border:2px solid #e2e8f0;box-sizing:border-box;}
.pp-id{flex:1;min-width:0;}
.pp-id b{font-size:15px;font-weight:700;color:#22364f;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pp-pts{font-size:13px;color:#7b8798;margin-top:2px;}
.pp-pts em{font-style:normal;color:#0e9488;font-size:18px;font-weight:700;margin-left:2px;}
.pp-logbar{display:flex;align-items:center;justify-content:space-between;padding:4px 16px;font-size:12px;color:#7b8798;letter-spacing:.5px;}
.pp-tabs{display:inline-flex;gap:4px;letter-spacing:0;}
.pp-tabs button{font-size:11px;padding:3px 10px;border-radius:12px;border:1px solid #e3eaf3;background:#fff;color:#7b8798;cursor:pointer;font-family:inherit;}
.pp-tabs button.on{background:#0e9488;border-color:#0e9488;color:#fff;}
.pp-tabs button:hover{border-color:#0e9488;}
.pp-logs{max-height:210px;overflow-y:auto;padding:0 16px 8px;font-size:13px;}
.pp-row{display:grid;grid-template-columns:1fr auto auto;gap:4px 10px;padding:9px 2px;border-bottom:1px dashed #eef2f7;align-items:center;}
.pp-row:last-child{border-bottom:none;}
.pp-rsn{color:#22364f;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pp-ts{grid-column:2;color:#9aa5b1;font-size:12px;white-space:nowrap;}
.pp-chg{grid-column:3;font-weight:700;white-space:nowrap;text-align:right;}
.pp-chg.in{color:#0f9d58;}
.pp-chg.out{color:#e5484d;}
.pp-bal{grid-column:1 / -1;color:#9aa5b1;font-size:12px;text-align:right;margin-top:-4px;}
.pp-empty{padding:18px 10px;text-align:center;color:#9aa6b6;font-size:12.5px;}
.pp-acts{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 16px 8px;border-top:1px solid #eef2f7;}
.pp-acts button{padding:10px 8px;border-radius:8px;border:1px solid #e3eaf3;background:#fff;color:#22364f;font-size:13px;cursor:pointer;text-align:left;font-family:inherit;}
.pp-acts button:hover{background:#f8fafc;border-color:#cbd5e1;}
.pp-logout{margin:0 16px 16px;padding:10px 8px;border-radius:8px;border:1px solid #fecaca;background:#fff;color:#e5484d;font-size:13px;cursor:pointer;text-align:center;width:calc(100% - 32px);font-family:inherit;}
.pp-logout:hover{background:#fef2f2;}

/* ===== 全站统一充值弹窗（与工作台一致） ===== */
.rc-mask{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:999998;display:flex;align-items:center;justify-content:center;padding:16px;}
.rc-mask.hidden{display:none;}
.rc-box{width:min(520px,100%);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 60px rgba(15,23,42,.3);font-family:"Microsoft YaHei","PingFang SC",sans-serif;}
.rc-head{padding:18px 24px 6px;}
.rc-title{font-size:18px;font-weight:800;color:#12253d;}
.rc-sub{font-size:12.5px;color:#7b8798;margin-top:3px;}
.rc-plans{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:20px 24px 6px;}
.rc-item{position:relative;display:flex;flex-direction:column;gap:5px;border:1.5px solid #e6ecf5;border-radius:14px;padding:15px 14px 13px;cursor:pointer;transition:.18s;background:#fff;text-align:left;}
.rc-item:hover{border-color:#0e9488;box-shadow:0 6px 18px rgba(14,148,136,.14);transform:translateY(-1px);}
.rc-item.hot{border-color:#0e9488;background:#f0fdfa;}
.rc-hot{position:absolute;top:-10px;right:12px;background:#0e9488;color:#fff;font-size:10px;font-weight:700;padding:3px 9px;border-radius:10px;letter-spacing:1px;box-shadow:0 2px 6px rgba(14,148,136,.35);}
.rc-price{display:flex;align-items:baseline;gap:2px;}
.rc-price b{font-size:26px;color:#22364f;font-weight:800;line-height:1;}
.rc-price i{font-style:normal;font-size:13px;color:#7b8798;}
.rc-pts{display:flex;align-items:center;gap:5px;font-size:13px;color:#7b8798;flex-wrap:wrap;}
.rc-pts em{font-style:normal;color:#0e9488;font-weight:700;font-size:15px;}
.rc-pts u{text-decoration:none;color:#f59e0b;font-size:12px;}
.rc-rate{display:block;font-size:11.5px;color:#9aa5b1;}
.rc-qr{padding:8px 24px 0;text-align:center;}
.rc-frame{display:inline-block;background:#fff;border:1px solid #e6ecf5;border-radius:16px;padding:14px;box-shadow:0 8px 24px rgba(0,0,0,.08);}
.rc-status{margin:12px 0 4px;font-size:14px;color:#0e9488;font-weight:700;}
.rc-tip{font-size:12px;color:#9aa5b1;margin:0 0 8px;}
.rc-foot{padding:12px 24px 20px;}
.rc-close{width:100%;padding:11px;border-radius:10px;border:1px solid #e6ecf5;background:#fff;color:#5b6b80;font-size:14px;cursor:pointer;}
.rc-close:hover{background:#f8fafc;}
@media (max-width:480px){.rc-plans{grid-template-columns:1fr;padding:14px 16px 4px;}.rc-head{padding:16px 16px 4px;}.rc-foot{padding:10px 16px 16px;}}

/* 选中态：只有点了才高亮（修"总是停在99元档"的错觉） */
.rc-item.sel{border-color:#0e9488 !important;background:#f0fdfa !important;box-shadow:0 6px 18px rgba(14,148,136,.18);}
.rc-item.sel::after{content:"✓";position:absolute;bottom:8px;right:10px;color:#0e9488;font-weight:800;font-size:13px;}
.rc-item.hot{border-color:#e6ecf5 !important;background:#fff !important;}


/* ===== 移动端头像浮层修复（2026-11-06）=====
   原因：窄屏下 .pms-menu 变为绝对定位后不再撑开导航，.pms-user 贴到标题右边，
   而 .pms-pop 是 right:0 锚定它的、宽 330px，于是浮层左侧超出屏幕被裁掉。
   修法：① 用户区显式靠右；② 浮层在窄屏改成左右各留 10px 的全宽浮层。 */
@media (max-width:860px){
  #pms-nav > .pms-user{margin-left:auto;}
  .pms-pop{
    position:fixed;
    top:60px;
    left:10px;
    right:10px;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    max-height:calc(100vh - 74px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
}
/* 极窄屏（<380px）再收一点内边距，保证字不被挤 */
@media (max-width:380px){
  .pp-head{padding-left:12px;padding-right:12px;}
  .pp-logbar{padding-left:12px;padding-right:12px;}
  .pp-logs{padding-left:12px;padding-right:12px;}
  .pp-acts{padding-left:12px;padding-right:12px;}
  .pp-logout{margin-left:12px;margin-right:12px;width:calc(100% - 24px);}
}

/* 平板档位细化：屏幕够宽时恢复 330px 卡片，锚定头像右侧 */
@media (min-width:481px) and (max-width:860px){
  .pms-pop{
    position:absolute !important;
    top:calc(100% + 10px) !important;
    left:auto !important;
    right:0 !important;
    width:330px !important;
    max-width:calc(100vw - 20px) !important;
  }
}
