body { font-family: "PingFang SC", "Microsoft YaHei", "Inter", sans-serif; background-color: #F9FAFB; -webkit-font-smoothing: antialiased; }
.font-serif-heading { font-family: "Songti SC", "SimSun", "Times New Roman", serif; }
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #CBD5E1; border-radius: 3px; }

@keyframes ph-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.animate-spin {
  animation: ph-spin 1s linear infinite;
}

@keyframes ph-home-fade-in-simple {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes ph-home-slide-in-up {
  from {
    opacity: 0;
    transform: translateY(1rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-in {
  animation-fill-mode: both;
}

.fade-in {
  animation-name: ph-home-fade-in-simple;
  animation-duration: 0.35s;
}

.slide-in-from-bottom-4 {
  animation-name: ph-home-slide-in-up;
  animation-duration: 0.5s;
}

.ph-home-perspective {
  perspective: 1000px;
}

.ph-home-3d {
  transform-style: preserve-3d;
  transform: rotateY(-5deg) rotateX(2deg);
  transition: transform 0.4s ease;
}

.ph-home-3d:hover {
  transform: rotateY(0deg) rotateX(0deg);
}

.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

.scrollbar-hide {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.ph-home-footer-wrap {
  width: min(1280px, calc(100vw - 48px)) !important;
  max-width: 1280px !important;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 767px) {
  .ph-home-footer-wrap {
    width: calc(100vw - 24px) !important;
  }
}

.py-4 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-5 {
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}

.ph-profile-overlay {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 86px 16px 16px !important;
}

.ph-profile-modal {
  width: 400px;
  max-width: calc(100vw - 24px);
}

.ph-profile-form {
  padding: 16px 20px !important;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.ph-profile-input {
  height: 46px !important;
  line-height: 46px;
  font-size: 15px !important;
  text-indent: 4ch;
}

.ph-profile-actions {
  display: flex;
  align-items: center;
  justify-content: flex-start !important;
  gap: 8px;
}

.ph-profile-actions button {
  height: 34px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.ph-history-overlay {
  padding: 12px !important;
}

.ph-history-modal {
  width: 850px !important;
  height: 700px !important;
  max-width: calc(100vw - 24px) !important;
  max-height: calc(100vh - 24px) !important;
  display: flex;
  flex-direction: column;
}

.ph-history-body {
  padding: 12px 20px !important;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.ph-history-table-wrap {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.ph-history-table-wrap > div {
  flex: 1;
  min-height: 0;
  overflow-y: scroll !important;
  scrollbar-gutter: stable;
}

.ph-history-table {
  table-layout: fixed;
}

.ph-history-remark {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ph-history-cell {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.ph-history-footer {
  margin-top: 10px !important;
  padding-top: 10px !important;
  min-height: 48px;
}

.ph-history-pagination {
  min-width: 226px;
  justify-content: center;
  flex-wrap: nowrap;
}

.ph-history-close-btn {
  box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.15);
}

#service-history-anchor table thead th,
#service-history-anchor table tbody td {
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}

.ph-mobile-pinned-sidebar {
  position: fixed;
  top: 5rem;
  left: 0;
  bottom: 0;
  width: 92px;
  background: transparent;
  border-right: none;
  box-shadow: none;
  z-index: 120;
}

@media (max-width: 1023px) {
  .ph-layout-shell {
    padding-left: 104px !important;
  }
}

/* HOME_TW_FALLBACK_START */
/* Homepage isolated utility fallback, extracted from shim.html */
.ph-home-scope .-mx-6{margin-left:-1.5rem;margin-right:-1.5rem}
.ph-home-scope .-space-x-3 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-0.75rem * var(--tw-space-x-reverse));margin-left:calc(-0.75rem * calc(1 - var(--tw-space-x-reverse)))}
.ph-home-scope .-z-10{z-index:-10}
.ph-home-scope .animate-ping{animation:ping 1s cubic-bezier(0, 0, 0.2, 1) infinite}
.ph-home-scope .aspect-\[4\/3\]{aspect-ratio:4/3}
.ph-home-scope .bg-\[size\:20px_20px\]{background-size:20px 20px}
.ph-home-scope .bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-orange-500{--tw-bg-opacity:1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-pink-500{--tw-bg-opacity:1;background-color:rgb(236 72 153 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-cyan-500{--tw-bg-opacity:1;background-color:rgb(6 182 212 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-indigo-500{--tw-bg-opacity:1;background-color:rgb(99 102 241 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-teal-500{--tw-bg-opacity:1;background-color:rgb(20 184 166 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-rose-500{--tw-bg-opacity:1;background-color:rgb(244 63 94 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-slate-50\/50{background-color:rgb(248 250 252 / 0.5)}
.ph-home-scope .bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-violet-100{--tw-bg-opacity:1;background-color:rgb(237 233 254 / var(--tw-bg-opacity, 1))}
.ph-home-scope .bg-violet-500{--tw-bg-opacity:1;background-color:rgb(139 92 246 / var(--tw-bg-opacity, 1))}
.ph-home-scope .border-blue-100{--tw-border-opacity:1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}
.ph-home-scope .border-l{border-left-width:1px}
.ph-home-scope .border-l-2{border-left-width:2px}
.ph-home-scope .border-slate-200\/50{border-color:rgb(226 232 240 / 0.5)}
.ph-home-scope .border-slate-200\/60{border-color:rgb(226 232 240 / 0.6)}
.ph-home-scope .border-white{--tw-border-opacity:1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}
.ph-home-scope .fill-blue-50{fill:#eff6ff}
.ph-home-scope .fill-orange-400{fill:#fb923c}
.ph-home-scope .font-mono{font-family:"Menlo", "Monaco", "Consolas", "Courier New", monospace}
.ph-home-scope .font-normal{font-weight:400}
.ph-home-scope .gap-3\.5{gap:0.875rem}
.ph-home-scope .ph-home-feedback-head{
  position: relative;
  justify-content: center;
}
.ph-home-scope .ph-home-feedback-copy{
  margin: 0 auto;
  text-align: center;
}
.ph-home-scope .ph-home-feedback-head > div:last-child{
  position: absolute;
  right: 0;
  bottom: 0;
}
.ph-home-scope .ph-home-avatar-badge{
  width:46px;
  min-width:46px;
  height:34px;
  border-radius:10px;
  line-height:1;
  box-sizing:border-box;
}
.ph-home-scope .group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
.ph-home-scope .h-2{height:0.5rem}
.ph-home-scope .h-2\.5{height:0.625rem}
.ph-home-scope .h-9{height:2.25rem}
.ph-home-scope .h-\[1px\]{height:1px}
.ph-home-scope .h-\[2px\]{height:2px}
.ph-home-scope .h-auto{height:auto}
.ph-home-scope .hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
.ph-home-scope .hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}
.ph-home-scope .inline-flex{display:inline-flex}
.ph-home-scope .items-end{align-items:flex-end}
.ph-home-scope .justify-end{justify-content:flex-end}
.ph-home-scope .leading-\[1\.15\]{line-height:1.15}
.ph-home-scope .leading-tight{line-height:1.25}
.ph-home-scope .max-w-\[280px\]{max-width:280px}
.ph-home-scope .max-w-lg{max-width:32rem}
.ph-home-scope .max-w-md{max-width:28rem}
.ph-home-scope .mb-12{margin-bottom:3rem}
.ph-home-scope .mb-16{margin-bottom:4rem}
.ph-home-scope .mb-5{margin-bottom:1.25rem}
.ph-home-scope .mb-6{margin-bottom:1.5rem}
.ph-home-scope .min-h-\[400px\]{min-height:400px}
.ph-home-scope .min-w-\[320px\]{min-width:320px}
.ph-home-scope .ml-auto{margin-left:auto}
.ph-home-scope .mt-16{margin-top:4rem}
.ph-home-scope .mt-8{margin-top:2rem}
.ph-home-scope .mt-auto{margin-top:auto}
.ph-home-scope .opacity-60{opacity:0.6}
.ph-home-scope .opacity-75{opacity:0.75}
.ph-home-scope .opacity-90{opacity:0.9}
.ph-home-scope .overflow-x-hidden{overflow-x:hidden}
.ph-home-scope .p-2\.5{padding:0.625rem}
.ph-home-scope .p-7{padding:1.75rem}
.ph-home-scope .pb-2{padding-bottom:0.5rem}
.ph-home-scope .pb-20{padding-bottom:5rem}
.ph-home-scope .pl-2{padding-left:0.5rem}
.ph-home-scope .pr-5{padding-right:1.25rem}
.ph-home-scope .pt-12{padding-top:3rem}
.ph-home-scope .pt-5{padding-top:1.25rem}
.ph-home-scope .pt-6{padding-top:1.5rem}
.ph-home-scope .px-1\.5{padding-left:0.375rem;padding-right:0.375rem}
.ph-home-scope .py-0\.5{padding-top:0.125rem;padding-bottom:0.125rem}
.ph-home-scope .py-24{padding-top:6rem;padding-bottom:6rem}
.ph-home-scope .py-3\.5{padding-top:0.875rem;padding-bottom:0.875rem}
.ph-home-scope .right-2{right:0.5rem}
.ph-home-scope .rounded-3xl{border-radius:1.5rem}
.ph-home-scope .rounded-sm{border-radius:0.125rem}
.ph-home-scope .snap-center{scroll-snap-align:center}
.ph-home-scope .snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}
.ph-home-scope .space-y-1\.5 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.375rem * var(--tw-space-y-reverse))}
.ph-home-scope .text-4xl{font-size:2.25rem;line-height:2.5rem}
.ph-home-scope .text-\[8px\]{font-size:8px}
.ph-home-scope .text-\[9px\]{font-size:9px}
.ph-home-scope .text-base{font-size:1rem;line-height:1.5rem}
.ph-home-scope .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}
.ph-home-scope .text-justify{text-align:justify}
.ph-home-scope .text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}
.ph-home-scope .text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}
.ph-home-scope .text-xl{font-size:1.25rem;line-height:1.75rem}
.ph-home-scope .top-10{top:2.5rem}
.ph-home-scope .top-\[50px\]{top:50px}
.ph-home-scope .tracking-wide{letter-spacing:0.025em}
.ph-home-scope .tracking-widest{letter-spacing:0.1em}
.ph-home-scope .w-2{width:0.5rem}
.ph-home-scope .w-2\.5{width:0.625rem}
.ph-home-scope .w-3\/4{width:75%}
.ph-home-scope .w-40{width:10rem}
.ph-home-scope .w-9{width:2.25rem}
.ph-home-scope .w-\[92\%\]{width:92%}
.ph-home-scope .w-\[96\%\]{width:96%}
.ph-home-scope .z-30{z-index:30}
.ph-home-scope .grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr));}
.ph-home-scope .border-emerald-100{border-color:rgb(209 250 229);}
.ph-home-scope .border-violet-100{border-color:rgb(237 233 254);}
.ph-home-scope .border-red-100{border-color:rgb(254 226 226);}
.ph-home-scope .text-emerald-500{color:rgb(16 185 129);}
.ph-home-scope .text-violet-400{color:rgb(167 139 250);}
.ph-home-scope [class~="bg-[linear-gradient(rgba(0,0,0,0.03)_1px,transparent_1px),linear-gradient(90deg,rgba(0,0,0,0.03)_1px,transparent_1px)]"]{background-image:linear-gradient(rgba(0,0,0,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,0.03) 1px,transparent 1px);}
.ph-home-scope [class~="shadow-[0_0_15px_rgba(37,99,235,0.3)]"]{--tw-shadow:0 0 15px rgba(37,99,235,0.3);--tw-shadow-colored:0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);}
.ph-home-scope [class~="shadow-[0_4px_20px_-10px_rgba(0,0,0,0.08)]"]{--tw-shadow:0 4px 20px -10px rgba(0,0,0,0.08);--tw-shadow-colored:0 4px 20px -10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);}
.ph-home-scope [class~="shadow-[4px_4px_0px_0px_rgba(226,232,240,1)]"]{--tw-shadow:4px 4px 0px 0px rgba(226,232,240,1);--tw-shadow-colored:4px 4px 0px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);}
.ph-home-scope [class~="hover:shadow-[0_10px_25px_-10px_rgba(0,0,0,0.12)]"]:hover{--tw-shadow:0 10px 25px -10px rgba(0,0,0,0.12);--tw-shadow-colored:0 10px 25px -10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);}
@media (min-width: 1024px){
.ph-home-scope .lg\:col-span-6{grid-column:span 6 / span 6}
.ph-home-scope .lg\:flex-row{flex-direction:row}
.ph-home-scope .lg\:grid-cols-12{grid-template-columns:repeat(12, minmax(0, 1fr))}
.ph-home-scope .lg\:justify-start{justify-content:flex-start}
.ph-home-scope .lg\:mx-0{margin-left:0px;margin-right:0px}
.ph-home-scope .lg\:pb-24{padding-bottom:6rem}
.ph-home-scope .lg\:pt-20{padding-top:5rem}
.ph-home-scope .lg\:text-6xl{font-size:3.75rem;line-height:1}
.ph-home-scope .lg\:text-left{text-align:left}
.ph-home-scope .lg\:w-1\/3{width:33.333333%}
.ph-home-scope .lg\:w-2\/3{width:66.666667%}
}
@media (min-width: 640px){
.ph-home-scope .sm\:flex{display:flex}
.ph-home-scope .sm\:flex-row{flex-direction:row}
}
@media (min-width: 768px){
.ph-home-scope .md\:block{display:block}
.ph-home-scope .md\:flex{display:flex}
.ph-home-scope .md\:gap-0{gap:0px}
.ph-home-scope .md\:min-w-\[360px\]{min-width:360px}
}
/* HOME_TW_FALLBACK_END */

.ph-history-mobile-list{display:block}
.ph-history-desktop-table{display:none}
.ph-history-desktop-pagination{display:none}
.ph-history-mobile-pagination{display:flex}
.ph-history-desktop-tips{display:none}
.ph-history-footer{flex-direction:column}
.ph-history-pager-wrap{width:100%}

@media (min-width: 640px){
.ph-history-mobile-list{display:none}
.ph-history-desktop-table{display:block}
.ph-history-desktop-pagination{display:flex}
.ph-history-mobile-pagination{display:none}
.ph-history-desktop-tips{display:flex}
.ph-history-footer{flex-direction:row}
.ph-history-pager-wrap{width:auto;justify-content:flex-start}
.ph-history-count{margin-right:0.5rem}
}

@media (max-width: 767px) {
  html,
  body,
  #root {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
  }

  body {
    font-size: 15px;
    line-height: 1.6;
  }

  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  img,
  svg,
  video,
  canvas {
    max-width: 100%;
    height: auto;
  }

  #root > div {
    max-width: 100%;
    overflow-x: hidden;
  }

  .max-w-7xl,
  [class*="max-w-[1600px]"],
  [class*="max-w-[1700px]"] {
    max-width: 100% !important;
    width: 100% !important;
  }

  .p-8,
  .p-10,
  .p-12 {
    padding: 1rem !important;
  }

  .px-6,
  .px-8,
  .px-10,
  .px-12 {
    padding-left: 0.875rem !important;
    padding-right: 0.875rem !important;
  }

  .py-6,
  .py-8,
  .py-10,
  .py-12 {
    padding-top: 0.875rem !important;
    padding-bottom: 0.875rem !important;
  }

  .gap-6 {
    gap: 0.875rem !important;
  }

  .gap-8,
  .gap-10,
  .gap-12 {
    gap: 1rem !important;
  }

  .text-\[10px\],
  .text-\[11px\] {
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .text-\[12px\] {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  .text-\[13px\] {
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  .text-\[14px\] {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

  p,
  span,
  label,
  li,
  td,
  th,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  button,
  a {
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  button,
  a[class],
  [role='button'],
  input[type='button'],
  input[type='submit'],
  input[type='reset'] {
    min-height: 44px;
  }

  input,
  select,
  textarea {
    min-height: 44px;
    font-size: 16px !important;
    line-height: 1.4;
  }

  .h-\[400px\] {
    height: 320px !important;
  }

  .h-\[240px\] {
    height: 190px !important;
  }

  .h-\[200px\] {
    height: 170px !important;
  }

  .overflow-x-auto {
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: auto;
  }

  table {
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse;
  }

  table[class*="min-w-[900px]"] {
    min-width: 100% !important;
  }

  th,
  td {
    white-space: normal !important;
    vertical-align: top;
  }

  th[class*="w-"],
  td[class*="w-"],
  th[class*="min-w-"],
  td[class*="min-w-"] {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  th.sticky,
  td.sticky {
    position: static !important;
    right: auto !important;
    left: auto !important;
  }

  .truncate {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
  }

  .ph-ai-panel {
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
    max-width: none !important;
    height: 72vh !important;
    max-height: 72vh !important;
    top: auto !important;
    bottom: 78px !important;
    transform: none !important;
    border-radius: 16px !important;
  }

  .ph-ai-panel .overflow-x-auto {
    overflow-x: visible !important;
    flex-wrap: wrap;
  }

  .ph-ai-toggle {
    right: 12px !important;
    bottom: 12px !important;
  }
}

@media (max-width: 767px) {
  .ph-home-scope {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  .ph-home-scope section {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
  }

  .ph-home-scope .max-w-7xl {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .ph-home-scope h1 {
    font-size: 2rem !important;
    line-height: 1.28 !important;
  }

  .ph-home-scope h2 {
    font-size: 1.5rem !important;
    line-height: 1.35 !important;
  }

  .ph-home-scope .text-base {
    font-size: 14px !important;
    line-height: 1.7 !important;
  }

  .ph-home-scope button,
  .ph-home-scope a[class],
  .ph-home-scope [role='button'] {
    min-height: 44px;
  }

  .ph-home-scope .ph-home-feedback-head {
    display: block;
    text-align: center;
    margin-bottom: 1.5rem;
  }

  .ph-home-scope .ph-home-feedback-head > div:last-child {
    position: static;
    justify-content: center;
    margin-top: 0.75rem;
  }

  .ph-home-scope .ph-home-testimonial-track {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 0 !important;
    padding: 0 0 8px !important;
    overflow: visible !important;
    scroll-snap-type: none;
  }

  .ph-home-scope .ph-home-testimonial-card {
    width: 100%;
    min-width: 0 !important;
    margin: 0;
  }

  .ph-home-scope .ph-home-avatar-badge {
    width: 42px;
    min-width: 42px;
    height: 32px;
    border-radius: 9px;
    font-size: 15px;
  }

  .ph-home-scope br {
    display: none;
  }
}

/* QR code hover popup */
.qr-hover-wrap .qr-popup { display: none; pointer-events: none; }
.qr-hover-wrap:hover .qr-popup { display: block; pointer-events: auto; }


/* ═══ 移动端全面优化 (2026-03-15) ═══ */

/* --- 服务页面整体布局 --- */
@media (max-width: 767px) {
  /* Dashboard 卡片：移除 min-width，改为自适应 */
  [class*="min-w-[160px]"] {
    min-width: 0 !important;
    flex: 1;
  }

  /* Dashboard 大卡片高度适配 */
  .h-48 {
    height: auto !important;
    min-height: 140px;
  }

  /* 标题字号缩小 */
  .text-3xl {
    font-size: 1.5rem !important;
    line-height: 1.3 !important;
  }
  .text-2xl {
    font-size: 1.25rem !important;
    line-height: 1.35 !important;
  }

  /* 大卡片内边距缩小 */
  .rounded-2xl.p-8 {
    padding: 1rem !important;
  }

  /* 服务Tab栏：确保单列不浪费空间 */
  .grid.grid-cols-1 {
    gap: 0.75rem !important;
  }

  /* 底部提交栏：竖排布局 */
  .sticky.bottom-0 {
    padding: 0.75rem !important;
  }
  .sticky.bottom-0 > .flex {
    flex-wrap: wrap;
    gap: 0.5rem !important;
  }
  .sticky.bottom-0 button {
    flex: 1;
    min-width: 0;
  }

  /* 上传区域高度缩小 */
  [class*="h-[180px]"] {
    height: 130px !important;
  }
  [class*="h-[160px]"] {
    height: 120px !important;
  }

  /* 信息卡片间距优化 */
  .space-y-12 > * + * {
    margin-top: 1.5rem !important;
  }
  .space-y-8 > * + * {
    margin-top: 1rem !important;
  }

  /* 左侧侧边栏在手机上隐藏 */
  .ph-mobile-pinned-sidebar {
    display: none !important;
  }
  .ph-layout-shell {
    padding-left: 0 !important;
  }

  /* 历史记录弹窗全屏 */
  .ph-history-modal {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    border-radius: 0 !important;
  }
  .ph-history-overlay {
    padding: 0 !important;
  }

  /* WriteTab AI写作区域 */
  /* 论文类型选择网格：两列 */
  .grid-cols-2 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .grid-cols-3 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .grid-cols-4 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  /* 但 md 及以上恢复原值由tailwind处理 */

  /* 投喂区域textarea */
  textarea {
    min-height: 100px !important;
    font-size: 15px !important;
  }

  /* 论文提纲预览卡片 */
  .rounded-xl {
    border-radius: 0.75rem !important;
  }

  /* 底部固定栏安全区域（iPhone刘海屏） */
  .sticky.bottom-0,
  .fixed.bottom-0 {
    padding-bottom: max(0.75rem, env(safe-area-inset-bottom)) !important;
  }

  /* 弹窗安全区域 */
  .fixed.inset-0 {
    padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
  }

  /* 选题/提纲推荐结果列表 */
  [class*="gap-2"] {
    gap: 0.375rem !important;
  }

  /* 价格和字数选择器居中 */
  .flex.items-center.justify-between {
    flex-wrap: wrap;
  }
}

/* --- 平板适配 (768-1023px) --- */
@media (min-width: 768px) and (max-width: 1023px) {
  .ph-mobile-pinned-sidebar {
    display: none !important;
  }
  .ph-layout-shell {
    padding-left: 0 !important;
  }

  .grid-cols-1.sm\:grid-cols-2 {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .h-48 {
    height: 10rem !important;
  }
}

/* --- iOS Safari 底部安全区 --- */
@supports (padding-bottom: env(safe-area-inset-bottom)) {
  .sticky.bottom-0 {
    padding-bottom: max(12px, env(safe-area-inset-bottom));
  }
}

/* --- 触屏优化：更大的点击目标 --- */
@media (hover: none) and (pointer: coarse) {
  /* 手指操作的设备 */
  button, a[class], [role="button"] {
    min-height: 44px;
    min-width: 44px;
  }
  
  /* 选题推荐的小按钮 */
  button[class*="text-[11px]"],
  button[class*="text-xs"] {
    min-height: 36px;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* 下拉选择器 */
  select {
    min-height: 48px;
    font-size: 16px !important;
  }
}

/* WriteTab 投喂指南弹窗 — 手机隐藏第三列 */
@media (max-width: 767px) {
  .ph-guide-col3 {
    display: none !important;
  }
}


/* 免费体验标签动画 */
@keyframes ph-free-glow {
  0%, 100% { box-shadow: 0 0 4px rgba(245, 158, 11, 0.4); }
  50% { box-shadow: 0 0 12px rgba(245, 158, 11, 0.6), 0 0 20px rgba(245, 158, 11, 0.2); }
}
.ph-free-badge {
  animation: ph-free-glow 2s ease-in-out infinite;
}
@keyframes ph-free-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-2px); }
}
.ph-free-float {
  animation: ph-free-float 3s ease-in-out infinite;
}
