/* 王龙工作室 V11.7.12 — 接码平台客户前台文字、层级与移动端排版优化
   仅作用于客户登录/注册、客户控制台与充值中心，不改管理后台业务逻辑。 */

:root{
  --wl-customer-font:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei UI","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;
}

html{font-size:16px}
body{font-family:var(--wl-customer-font)!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility!important}
button,input,select,textarea{font-family:inherit}

/* ---------- 登录 / 注册 ---------- */
.sms-brand b{font-size:20px!important;font-weight:850!important;letter-spacing:-.25px!important}
.sms-brand small{font-size:11px!important;line-height:1.25!important;letter-spacing:1.35px!important}
.sms-top-links a{font-size:13px!important;font-weight:760!important}
.sms-kicker{font-size:12px!important;line-height:1.2!important;letter-spacing:1.35px!important}
.sms-login-copy h1{font-weight:900!important;letter-spacing:-2.8px!important}
.sms-login-copy>p{max-width:760px!important;font-size:16px!important;line-height:1.82!important;color:#a3b4cb!important}
.sms-capability{gap:12px!important}
.sms-capability>div{padding:17px 15px!important;border-radius:17px!important}
.sms-capability b{font-size:12px!important}
.sms-capability span{margin-top:8px!important;font-size:14px!important;line-height:1.4!important}
.visual-head span{font-size:11px!important;letter-spacing:1.1px!important}
.visual-head em{font-size:10px!important}
.visual-balance small{font-size:12px!important}
.visual-rows span{font-size:12px!important;line-height:1.45!important}
.visual-rows b{font-size:10px!important}
.sms-auth-card{padding:40px!important}
.auth-label{font-size:11px!important;letter-spacing:1px!important}
.sms-auth-card h2{font-size:31px!important;font-weight:850!important;letter-spacing:-.8px!important}
.sms-auth-card>p{font-size:15px!important;line-height:1.7!important;color:#9cadc5!important}
.sms-form{gap:18px!important}
.sms-form label{gap:9px!important;font-size:14px!important;font-weight:760!important;color:#d5dfed!important}
.sms-form input{height:54px!important;font-size:16px!important;line-height:1.2!important}
.sms-form button{height:55px!important;font-size:15px!important;font-weight:820!important}
.sms-error{font-size:14px!important;line-height:1.55!important}
.auth-recharge{padding:16px!important}
.auth-recharge small{font-size:10px!important;letter-spacing:1px!important}
.auth-recharge b{font-size:14px!important}
.auth-recharge span{font-size:12px!important;line-height:1.5!important}
.auth-recharge a{font-size:13px!important}
.auth-bottom{font-size:14px!important}
.auth-mini-links{font-size:12px!important}
.register-note{gap:11px 18px!important}
.register-note span{font-size:13px!important}
.register-note b{font-size:14px!important;line-height:1.5!important}
.sms-footer{font-size:12px!important;line-height:1.6!important}

/* ---------- 客户控制台：统一文字清晰度 ---------- */
.portal-layout{grid-template-columns:252px minmax(0,1fr)!important;gap:20px!important}
.portal-sidebar{padding:20px!important}
.portal-brand b{font-size:18px!important;font-weight:850!important}
.portal-brand small{font-size:10px!important;letter-spacing:1.25px!important}
.portal-user-card{padding:16px!important}
.portal-user-card>span,.portal-recharge-card span{font-size:10px!important;line-height:1.25!important;letter-spacing:1px!important}
.portal-user-card>b{font-size:15px!important}
.portal-user-card>small{font-size:12px!important;line-height:1.45!important}
.portal-recharge-card{padding:14px!important}
.portal-recharge-card b{font-size:14px!important}
.portal-recharge-card small{font-size:11px!important;line-height:1.4!important}
.portal-sidebar nav a{min-height:47px!important;font-size:13px!important;font-weight:760!important}
.portal-sidebar nav em{font-size:10px!important}
.sidebar-status b{font-size:12px!important}
.sidebar-status span{font-size:10px!important;letter-spacing:.9px!important}
.portal-topbar{padding:24px 27px!important}
.top-kicker{font-size:11px!important;line-height:1.2!important;letter-spacing:1.25px!important}
.portal-topbar h1{font-size:29px!important;font-weight:850!important;letter-spacing:-.7px!important}
.portal-topbar p{font-size:13px!important;line-height:1.55!important;color:#9badc5!important}
.top-live,.ghost-link,.panel-recharge{min-height:40px!important;padding:0 13px!important;font-size:12px!important}
.dashboard-hero{padding:30px!important}
.hero-kicker{font-size:11px!important;line-height:1.2!important;letter-spacing:1.1px!important}
.balance-value strong{font-size:48px!important}
.balance-value em{font-size:14px!important}
.balance-copy>small{max-width:720px;margin-top:12px!important;font-size:13px!important;line-height:1.65!important;color:#9fb0c8!important}
.hero-status-row span{padding:9px 11px!important;font-size:12px!important;line-height:1.35!important}
.hero-quick a{min-height:42px!important;padding:0 14px!important;font-size:12px!important}
.hero-node b{font-size:10px!important}.hero-node span{font-size:10px!important}
.portal-panel{padding:28px!important}
.portal-panel-head span{font-size:11px!important;line-height:1.2!important;letter-spacing:1.1px!important}
.portal-panel-head h2{font-size:25px!important;font-weight:850!important;letter-spacing:-.55px!important}
.portal-panel-head p{max-width:720px;font-size:13px!important;line-height:1.65!important;color:#9eafc6!important}
.panel-live{padding:8px 10px!important;font-size:11px!important}
.activation-toolbar label>span{font-size:13px!important}
.activation-country select,.activation-search input{font-size:14px!important}
.activation-search button{font-size:13px!important}
.activation-tip{padding:13px 15px!important;font-size:12px!important;line-height:1.6!important}
.activation-result-head{font-size:11px!important}
.activation-row strong{font-size:14px!important}
.activation-row span{font-size:12px!important}
.activation-row b{font-size:15px!important}
.activation-row button{font-size:12px!important}
.activation-empty{font-size:13px!important}
.portal-search input{font-size:14px!important}
.portal-search b{font-size:10px!important}
.refresh-projects{font-size:12px!important}
.service-grid{gap:16px!important}
.service-card{padding:22px!important}
.service-title-line h3{font-size:19px!important;font-weight:850!important;line-height:1.3!important}
.service-title-line i{padding:5px 8px!important;font-size:10px!important}
.service-meta{font-size:12px!important;line-height:1.45!important}
.service-price{font-size:31px!important}
.service-price:before{font-size:11px!important}
.keyword-label{font-size:13px!important}
.keyword-entry input{font-size:15px!important}
.keyword-entry small{font-size:11px!important;line-height:1.55!important}
.keyword-policy span{font-size:11px!important;line-height:1.45!important}
.service-action-button{min-height:48px!important;font-size:13px!important;font-weight:820!important}
.active-order p{font-size:14px!important;line-height:1.6!important}
.active-order small{font-size:12px!important;line-height:1.6!important}
.active-order .status{font-size:11px!important}
.order-number{font-size:26px!important}
.order-keyword,.sms-box{font-size:12px!important;line-height:1.6!important}
.copy-btn,.release-btn{font-size:12px!important}
.sms-code{font-size:28px!important}
.history-panel>.portal-panel-head>small{font-size:12px!important;color:#8ea2bf!important}
.history-item{font-size:12px!important}
.history-item strong{font-size:14px!important}
.history-item time,.history-item small{font-size:11px!important}
.history-item .status{font-size:10px!important}
.portal-footer{font-size:11px!important;line-height:1.55!important}
.portal-recharge-fab{font-size:12px!important}
.portal-auth-card p{font-size:14px!important;line-height:1.7!important}
.auth-kicker{font-size:11px!important}
.portal-auth-field{font-size:14px!important}
.portal-main-btn,.portal-secondary-btn{font-size:14px!important}
.portal-error{font-size:13px!important}

/* ---------- 充值中心：小字与信息层级 ---------- */
body.recharge-page{font-size:15px!important}
body.recharge-page .recharge-top nav a{font-size:13px!important}
body.recharge-page .recharge-kicker,
body.recharge-page .start-eyebrow,
body.recharge-page .card-head span,
body.recharge-page .balance-panel small,
body.recharge-page .rate-card span{font-size:11px!important;letter-spacing:1px!important}
body.recharge-page .overview-copy h1{font-weight:850!important;letter-spacing:-1.2px!important}
body.recharge-page .overview-copy p{font-size:14px!important;line-height:1.72!important}
body.recharge-page .overview-chips span{font-size:11px!important}
body.recharge-page .balance-panel span{font-size:12px!important}
body.recharge-page .card-head h2{font-size:24px!important;font-weight:850!important}
body.recharge-page .card-head>b,.network-pill{font-size:11px!important}
body.recharge-page .start-card-head p{font-size:13px!important;line-height:1.65!important}
body.recharge-page .start-ready-pill{font-size:11px!important}
body.recharge-page .start-rate-line span,
body.recharge-page .start-rate-line small{font-size:12px!important;line-height:1.55!important}
body.recharge-page .start-rate-line strong{font-size:17px!important}
body.recharge-page .recharge-form label>span{font-size:13px!important;font-weight:780!important}
body.recharge-page .recharge-form label small{font-size:12px!important;line-height:1.55!important}
body.recharge-page .recharge-form input,
body.recharge-page .recharge-form textarea{font-size:16px!important}
body.recharge-page .recharge-primary{font-size:14px!important;font-weight:820!important}
body.recharge-page .start-safe-note{font-size:12px!important;line-height:1.6!important}
body.recharge-page .guide-title span,.guide-title b{font-size:12px!important}
body.recharge-page .guide-steps b{font-size:13px!important}
body.recharge-page .guide-steps span{font-size:12px!important;line-height:1.5!important}
body.recharge-page .guide-foot{font-size:12px!important}
body.recharge-page .auto-pay-amount small{font-size:12px!important}
body.recharge-page .auto-pay-amount button{font-size:12px!important}
body.recharge-page .auto-order-grid span{font-size:11px!important}
body.recharge-page .auto-order-grid b{font-size:13px!important}
body.recharge-page .auto-order-note p{font-size:12px!important;line-height:1.65!important}
body.recharge-page .auto-cancel-form button{font-size:13px!important}
body.recharge-page .auto-cancel-form small{font-size:11px!important;line-height:1.6!important}
body.recharge-page .support-note-copy>small{font-size:11px!important}
body.recharge-page .submit-support-note h3{font-size:18px!important}
body.recharge-page .submit-support-note p{font-size:12px!important;line-height:1.65!important}
body.recharge-page .support-note-actions{font-size:12px!important}
body.recharge-page .payment-status span,
body.recharge-page .payment-status small{font-size:12px!important}
body.recharge-page .address-main small{font-size:11px!important;line-height:1.55!important}
body.recharge-page .address-main code{font-size:15px!important;line-height:1.65!important}
body.recharge-page .address-actions button,.address-actions span{font-size:12px!important}
body.recharge-page .qr-slot small{font-size:11px!important}
body.recharge-page .security-strip span{font-size:11px!important;line-height:1.55!important}
body.recharge-page .security-strip strong{font-size:12px!important}
body.recharge-page .security-callout p{font-size:12px!important;line-height:1.65!important}
body.recharge-page .rate-card strong{font-size:17px!important}
body.recharge-page .rate-card small{font-size:12px!important;line-height:1.55!important}
body.recharge-page .network-confirm span{font-size:12px!important;line-height:1.6!important}
body.recharge-page .recharge-table{font-size:12px!important}
body.recharge-page .recharge-table th{font-size:11px!important}
body.recharge-page .review-note,.chain-link{font-size:11px!important}
body.recharge-page .recharge-status{font-size:10px!important}
body.recharge-page .recharge-empty b{font-size:15px!important}
body.recharge-page .recharge-empty span{font-size:12px!important;line-height:1.6!important}
body.recharge-page .recharge-footer{font-size:11px!important;line-height:1.6!important}

/* ---------- 平板 ---------- */
@media(max-width:1100px){
  .portal-layout{grid-template-columns:1fr!important}
  .portal-sidebar{padding:15px!important}
  .portal-sidebar nav a{font-size:13px!important}
  .sms-login-layout{gap:22px!important}
}

/* ---------- 手机 ---------- */
@media(max-width:760px){
  html{font-size:16px}

  /* 登录/注册：不再像缩小版桌面海报 */
  .sms-top{width:calc(100% - 24px)!important;height:68px!important}
  .sms-brand>i{width:40px!important;height:40px!important}
  .sms-brand b{font-size:17px!important}
  .sms-top-links{gap:6px!important}
  .sms-top-links a{min-height:38px!important;padding:0 10px!important;font-size:12px!important}
  .sms-login-layout{width:calc(100% - 20px)!important;padding:14px 0 34px!important;gap:12px!important}
  .sms-login-copy{padding:24px 20px!important;border-radius:24px!important}
  .sms-kicker{font-size:11px!important}
  .sms-login-copy h1{margin-top:15px!important;font-size:35px!important;line-height:1.08!important;letter-spacing:-1.7px!important}
  .sms-login-copy>p{margin-top:15px!important;font-size:14px!important;line-height:1.7!important}
  .sms-capability{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:20px!important}
  .sms-capability>div{padding:13px 12px!important}
  .sms-capability span{font-size:13px!important}
  .sms-visual-card{margin-top:16px!important;padding:15px!important;border-radius:19px!important}
  .visual-balance{padding:15px!important}.visual-balance strong{font-size:25px!important}
  .visual-rows{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  .visual-rows span{display:flex!important;align-items:center!important;padding:10px 8px!important;font-size:11px!important}
  .visual-rows b{display:none!important}
  .sms-auth-card{padding:25px 20px!important;border-radius:23px!important}
  .sms-auth-card h2{font-size:27px!important}
  .sms-auth-card>p{font-size:14px!important;margin-bottom:22px!important}
  .sms-form label{font-size:14px!important}
  .sms-form input{height:52px!important;font-size:16px!important}
  .sms-form button{height:53px!important;font-size:14px!important}
  .auth-recharge{padding:14px!important}.auth-bottom{font-size:13px!important}.auth-mini-links{font-size:12px!important}
  .register-note span{font-size:12px!important}.register-note b{font-size:13px!important}
  .sms-footer{width:calc(100% - 24px)!important;font-size:11px!important}

  /* 客户控制台 */
  .portal-layout{width:calc(100% - 14px)!important;margin:7px auto 22px!important;gap:10px!important}
  .portal-sidebar{padding:12px!important;border-radius:18px!important}
  .portal-brand{padding:1px 2px 10px!important}
  .portal-brand b{font-size:16px!important}.portal-brand small{font-size:10px!important}
  .portal-sidebar nav{gap:5px!important;margin-top:2px!important}
  .portal-sidebar nav a{min-height:40px!important;padding:0 10px!important;font-size:12px!important;border-radius:11px!important}
  .portal-sidebar nav em{font-size:10px!important}
  .portal-main-shell{gap:10px!important}
  .portal-topbar{padding:17px 16px!important;border-radius:19px!important}
  .top-kicker{font-size:10px!important}
  .portal-topbar h1{margin-top:6px!important;font-size:24px!important}
  .portal-topbar p{font-size:12px!important;line-height:1.55!important}
  .top-live,.ghost-link,.panel-recharge{min-height:37px!important;font-size:11px!important}
  .dashboard-hero{padding:19px 17px!important;border-radius:20px!important;min-height:0!important}
  .hero-kicker{font-size:10px!important}
  .balance-value{margin-top:10px!important}.balance-value strong{font-size:38px!important}.balance-value em{font-size:12px!important}
  .balance-copy>small{font-size:12px!important;line-height:1.6!important}
  .hero-status-row{margin-top:14px!important}.hero-status-row span{padding:7px 9px!important;font-size:11px!important}
  .hero-quick{margin-top:14px!important;gap:7px!important}.hero-quick a{min-height:39px!important;padding:0 11px!important;font-size:11px!important}
  .portal-panel{padding:18px 16px!important;border-radius:20px!important}
  .portal-panel-head{gap:10px!important}
  .portal-panel-head span{font-size:10px!important}
  .portal-panel-head h2{margin-top:5px!important;font-size:22px!important}
  .portal-panel-head p{font-size:12px!important;line-height:1.6!important}
  .panel-live{font-size:10px!important}
  .activation-toolbar{margin-top:17px!important;gap:10px!important}
  .activation-toolbar label>span{font-size:12px!important}
  .activation-country select,.activation-search input{height:48px!important;font-size:14px!important}
  .activation-search button{font-size:12px!important}
  .activation-tip{font-size:11px!important}
  .activation-row{padding:13px 4px!important}.activation-row strong{font-size:13px!important}.activation-row b{font-size:14px!important}.activation-row button{font-size:11px!important}
  .project-toolbar{margin-top:16px!important}.portal-search{height:47px!important}.portal-search input{font-size:14px!important}
  .service-grid{gap:10px!important;margin-top:11px!important}
  .service-card{padding:17px!important;border-radius:18px!important}
  .service-title-line h3{font-size:17px!important}.service-meta{font-size:11px!important;margin-top:9px!important}.service-price{font-size:27px!important}
  .keyword-entry{padding:13px!important;border-radius:15px!important}.keyword-label{font-size:12px!important}.keyword-entry input{height:48px!important;font-size:16px!important}
  .keyword-entry small{font-size:11px!important}.keyword-policy span{font-size:10px!important}
  .service-action-button{font-size:13px!important}
  .active-order p{font-size:13px!important}.active-order small{font-size:11px!important}.order-number{font-size:24px!important}.sms-code{font-size:25px!important}
  .history-item strong{font-size:13px!important}.history-item time,.history-item small{font-size:10px!important}
  .portal-footer{font-size:10px!important}
  .portal-recharge-fab{right:10px!important;bottom:10px!important;min-height:44px!important;padding:0 12px!important;font-size:11px!important}

  /* 充值中心 */
  body.recharge-page .recharge-shell{width:calc(100% - 14px)!important}
  body.recharge-page .overview-copy,
  body.recharge-page .balance-panel,
  body.recharge-page .recharge-card{padding:18px 16px!important;border-radius:19px!important}
  body.recharge-page .overview-copy h1{font-size:29px!important}
  body.recharge-page .overview-copy p{font-size:13px!important}
  body.recharge-page .card-head h2{font-size:21px!important}
  body.recharge-page .start-card-head p{font-size:12px!important}
  body.recharge-page .recharge-start-layout{gap:12px!important}
  body.recharge-page .recharge-form label>span{font-size:12px!important}
  body.recharge-page .start-safe-note,
  body.recharge-page .guide-steps span,
  body.recharge-page .auto-order-note p,
  body.recharge-page .submit-support-note p,
  body.recharge-page .security-callout p,
  body.recharge-page .network-confirm span{font-size:11px!important}
  body.recharge-page .address-main code{font-size:14px!important;word-break:break-all!important}
  body.recharge-page .recharge-table-wrap{overflow:auto!important;-webkit-overflow-scrolling:touch}
  body.recharge-page .recharge-table{min-width:690px!important}
  body.recharge-page .recharge-footer{font-size:10px!important}
}

@media(max-width:480px){
  .sms-login-copy h1{font-size:32px!important}
  .sms-visual-card{display:none!important}
  .sms-capability{margin-top:17px!important}
  .portal-sidebar nav a svg{display:none!important}
  .portal-sidebar nav a{font-size:11px!important}
  .hero-status-row span:nth-child(n+3){display:none!important}
  .hero-quick a{flex:1 1 auto!important;justify-content:center!important}
  .portal-panel-head p{max-width:270px}
}
