/* 星河 · Liquid Glass / 2026110604
   Presentation layer only. Existing routes, catalog, signing and certificate logic stay intact. */
:root {
  --ws-bg: #eef2f9;
  --ws-text: #172135;
  --ws-sub: #64718a;
  --ws-line: rgba(99,122,160,.16);
  --ws-blue: #2176ed;
  --ws-blue-2: #1262d5;
  --ws-blue-soft: rgba(41,121,245,.09);
  --ws-gold: #c5e1ff;
  --ws-dark: #192d4d;
  --ws-radius: 24px;
  --ws-shadow: 0 12px 34px rgba(54,78,119,.07), inset 0 1px 0 rgba(255,255,255,.95);
  --lg-glass: rgba(255,255,255,.68);
  --lg-rim: rgba(255,255,255,.88);
  --lg-blur: blur(24px) saturate(160%);
  --lg-primary: linear-gradient(160deg,#5ba9ff 0%,#2581f4 42%,#1465df 100%);
  --lg-ease: cubic-bezier(.22,1,.36,1);
}
html { scroll-padding-top: 164px; background: #eef2f9; }
html, body, body.theme-light { color: var(--ws-text) !important; background: #eef2f9 !important; }
body { position: relative; isolation: isolate; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
#page, #changebg { background: transparent !important; }
body::after {
  content: ''; position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse at 2% 5%,rgba(140,192,255,.37),transparent 40%),
    radial-gradient(ellipse at 98% 28%,rgba(185,167,244,.22),transparent 38%),
    radial-gradient(ellipse at 50% 98%,rgba(158,225,227,.18),transparent 45%),#eef2f9;
}
#page { position: relative; isolation: isolate; }
::selection { background: #c6dfff; color: #123561; }
button, a, [role="button"], input, summary { -webkit-tap-highlight-color: transparent; }
button, a, [role="button"] { touch-action: manipulation; }
button { font-weight: 650; }
button, .ws-get, .btn, .ws-app-card, summary {
  transition: background .2s ease, border-color .2s ease, box-shadow .25s ease,
    transform .28s var(--lg-ease), color .2s ease;
}
button:active:not(:disabled), .btn:active, .ws-get:active { transform: scale(.97); }
button:disabled { cursor: not-allowed; opacity: .5; }
:where(button,a,input,textarea,summary,[tabindex]):focus-visible {
  outline: 3px solid rgba(27,113,238,.65) !important; outline-offset: 4px !important;
}
/* Floating chrome: a brighter rim, translucent body and soft contact shadow. */
.st-head {
  inset: calc(12px + env(safe-area-inset-top,0px)) auto auto 50% !important;
  transform: translateX(-50%); width: min(1200px,calc(100% - 40px)) !important;
  height: 72px !important; padding: 0 18px !important; gap: 18px !important;
  border: 1px solid var(--lg-rim) !important; border-radius: 25px !important;
  background: linear-gradient(135deg,rgba(255,255,255,.88),rgba(255,255,255,.54)) !important;
  -webkit-backdrop-filter: var(--lg-blur); backdrop-filter: var(--lg-blur);
  box-shadow: 0 8px 30px rgba(52,79,124,.10),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(255,255,255,.45) !important;
}
.ws-brand { gap: 11px; }
.ws-brand > span {
  width: 42px; height: 42px; border-radius: 14px; font-size: 25px;
  background: linear-gradient(145deg,#b7deff -10%,#519df6 40%,#2660c9 100%);
  border: 1px solid rgba(255,255,255,.6);
  box-shadow: 0 4px 9px rgba(35,99,185,.18),inset 0 1px 2px #e7f5ff,inset 0 -2px 5px rgba(15,65,163,.25);
}
.ws-brand b { font-size: 16px; font-weight: 750; letter-spacing: -.035em; }
.ws-brand small { font-size: 8px; letter-spacing: .12em; color: #6d7e97; }
.ws-desktop-nav { position: relative; gap: 3px; }
.ws-desktop-nav button {
  border: 0; height: 43px; padding: 0 13px; border-radius: 15px;
  color: #53617b; font-size: 12px; font-weight: 650;
}
.ws-desktop-nav button.active {
  color: #1765cd; border: 0; background: rgba(255,255,255,.87);
  box-shadow: 0 3px 10px rgba(44,86,146,.1),inset 0 0 0 1px rgba(255,255,255,.98);
}
.ws-desktop-nav button:hover { background: rgba(255,255,255,.58); color: #1765cd; }
.ws-head-tools { gap: 8px; }
.ws-head-tools > label {
  width: clamp(130px,15vw,180px); height: 42px; border-radius: 15px;
  background: rgba(235,241,250,.65); border-color: rgba(141,163,192,.15); box-shadow: inset 0 1px 3px rgba(74,97,137,.04);
}
.ws-head-device { height: 44px; max-width: 174px; border-radius: 15px; border-color: rgba(255,255,255,.9); background: rgba(255,255,255,.58); }
.ws-head-device b { font-size: 10px; }
.ws-head-device small { color: #65758d; font-size: 8px; }
.ws-head-device.is-ready { background: rgba(234,250,243,.65); border-color: rgba(137,207,173,.35); }
.ws-style-toggle { height: 35px; background: rgba(231,237,248,.6); border-color: rgba(255,255,255,.7); }
.ws-style-toggle b { background: rgba(255,255,255,.92); color: #2871d0; box-shadow: 0 2px 6px rgba(55,82,130,.12); }
.ws-platform-strip {
  top: calc(96px + env(safe-area-inset-top,0px)); left: 50%; right: auto; transform: translateX(-50%);
  width: min(1180px,calc(100% - 56px)); height: 38px; border-radius: 15px;
  border: 1px solid rgba(255,255,255,.7); background: rgba(255,255,255,.35);
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
}
.ws-platform-strip > div { width: calc(100% - 24px); gap: 7px; }
.ws-platform-strip button { height: 25px; background: rgba(255,255,255,.48); border-color: rgba(119,141,179,.12); }
.ws-platform-strip > div > span { color: #596c87; font-weight: 600; font-size: 10px; }
#changebg.page-content { padding-top: calc(160px + env(safe-area-inset-top,0px)) !important; padding-bottom: 70px !important; }
/* Consistent content surfaces — restrained blur avoids a costly blur on every app tile. */
.ws-device-bar, .ws-filter-card, .ws-side-card, .ws-feature-card, .ws-rom-panel, .ws-rom-note,
.ws-plan, .ws-faq, .ws-guide, .ws-context-device, .ws-detail-stats,
.ws-vip-info > div, .ws-download-option, .ws-install-steps li, .ws-support-links button,
.ws-category-grid button, .ws-platform-grid button, .ws-app-card {
  border: 1px solid rgba(255,255,255,.92); background: rgba(255,255,255,.66);
  border-radius: 23px; box-shadow: var(--ws-shadow);
}
.ws-filter-card, .ws-side-card, .ws-feature-card, .ws-plan, .ws-faq, .ws-rom-panel { padding: 25px; }
.ws-title-row h2 { font-size: 24px; font-weight: 740; letter-spacing: -.045em; }
.ws-title-row small, .ws-feature-card > small, .ws-side-card > small { color: #75849b; font-size: 9px; font-weight: 650; letter-spacing: .13em; }
.ws-title-row > button { min-height: 38px; font-size: 12px; color: #2e72d2; }
.ws-title-row p { font-size: 12px; }
.ws-collection { padding-top: 30px; }
/* A luminous hero rather than the previous flat blue banner. */
.ws-hero, .ws-subpage-head {
  isolation: isolate; position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.85);
  border-radius: 30px; color: #213d65;
  background: radial-gradient(ellipse at 100% 5%,rgba(211,190,255,.67),transparent 55%),
    radial-gradient(ellipse at 8% 100%,rgba(171,220,255,.83),transparent 57%),
    linear-gradient(125deg,rgba(255,255,255,.92),rgba(229,241,255,.72) 58%,rgba(226,227,252,.78));
  box-shadow: 0 15px 45px rgba(77,113,162,.10),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(255,255,255,.65);
}
.ws-hero::before {
  background-image: none; mask-image: none; border-radius: inherit;
  background: linear-gradient(124deg,rgba(255,255,255,.75),transparent 42%,rgba(255,255,255,.24));
}
.ws-hero h1, .ws-subpage-head h1 { color: #203b62; font-weight: 760; letter-spacing: -.055em; line-height: 1.18; }
.ws-hero h1 { font-size: clamp(32px,4.3vw,54px); margin-top: 18px; margin-bottom: 14px; }
.ws-hero h1 em { color: #2d75d0; }
.ws-hero p, .ws-subpage-head p { color: #526e91; font-size: 14px; line-height: 1.85; }
.ws-home-hero { min-height: 340px; padding: 48px; }
.ws-library-hero, .ws-rom-hero, .ws-vip-hero, .ws-support-hero { min-height: 228px; padding: 35px 40px; }
.ws-library-hero h1, .ws-rom-hero h1, .ws-vip-hero h1, .ws-support-hero h1 { max-width: 800px; font-size: clamp(30px,3.5vw,44px); }
.ws-kicker {
  padding: 8px 12px; background: rgba(255,255,255,.58); border: 1px solid rgba(255,255,255,.85);
  box-shadow: 0 2px 6px rgba(81,115,165,.04); border-radius: 9px;
  font-size: 9px; letter-spacing: .15em; font-weight: 700; color: #50749b;
}
.ws-count { margin-left: 20px; }
.ws-count b { color: #3b75bd; font-size: 64px; font-weight: 500; letter-spacing: -.07em; }
.ws-count small { color: #6c87aa; font-size: 9px; margin-top: 6px; }
.ws-hero-art { width: 230px; height: 230px; }
.ws-hero-art i {
  border-color: rgba(255,255,255,.92); background: linear-gradient(135deg,rgba(255,255,255,.8),rgba(255,255,255,.2));
  box-shadow: 0 18px 35px rgba(81,119,185,.14),inset 0 1px 2px #fff,inset 0 -1px 2px rgba(105,144,203,.16);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); transform: rotate(-12deg);
}
.ws-hero-art i:nth-child(1) { width: 130px; height: 130px; top: 30px; left: 50px; border-radius: 36px; }
.ws-hero-art i:nth-child(2) { width: 66px; height: 66px; top: 120px; left: 2px; border-radius: 21px; transform: rotate(14deg); }
.ws-hero-art i:nth-child(3) { width: 85px; height: 85px; right: 0; bottom: 10px; border-radius: 25px; transform: rotate(16deg); }
.ws-hero-art b { top: 60px; left: 87px; font-size: 56px; color: #5994dc; font-weight: 500; text-shadow: 0 2px 0 rgba(255,255,255,.85); }
.ws-vip-crown, .ws-help-icon {
  border-radius: 28px; color: #5681b8; background: rgba(255,255,255,.55); border: 1px solid #fff;
  box-shadow: 0 10px 25px rgba(62,104,166,.1),inset 0 1px 0 #fff;
}
/* Primary controls catch light without sacrificing a solid contrast floor. */
.ws-btn-gold, .ws-search-card button, .ws-side-card button, .ws-rom-note button,
.ws-plan > button, .ws-plan.is-featured > button, .ws-query-callout button,
.ws-device-actions button:first-child, .ws-vip-entitlement button,
#Home .st-install-btn, #Query .st-install-btn, #Home .btn-mini, #Query .btn-mini {
  border: 1px solid rgba(255,255,255,.35) !important; border-radius: 15px !important;
  background: var(--lg-primary) !important; color: #fff !important;
  box-shadow: 0 5px 12px rgba(35,108,209,.19),inset 0 1px 0 rgba(255,255,255,.45),inset 0 -1px 0 rgba(9,66,160,.15) !important;
}
.ws-btn { min-height: 46px; font-size: 13px; font-weight: 650; border-radius: 15px; }
.ws-btn-dark { color: #35669f; border: 1px solid rgba(255,255,255,.9); background: rgba(255,255,255,.65); box-shadow: inset 0 1px 0 #fff,0 3px 10px rgba(76,108,156,.06); }
.ws-hero-actions { gap: 12px; margin-top: 25px; }
.ws-search-card { min-height: 60px; padding: 8px 9px 8px 19px; border-radius: 20px; border-color: rgba(255,255,255,.92); background: rgba(255,255,255,.72); box-shadow: var(--ws-shadow); }
.ws-search-card input { font-size: 14px; color: #243c5b; }
.ws-search-card input::placeholder { color: #7b8ba4; }
.ws-search-card button { min-height: 42px; font-size: 13px; padding: 0 24px; }
.ws-filter-card .ws-search-card, .ws-rom-search { background: rgba(232,239,250,.7); border-color: rgba(144,165,194,.12); box-shadow: inset 0 1px 3px rgba(58,83,125,.035); }
.ws-filter-label { margin-bottom: 12px; }
.ws-filter-label span { font-size: 12px; }
.ws-filter-label small { font-size: 10px; }
.ws-pills { gap: 9px; }
.ws-pills button { height: 38px; padding: 0 18px; font-size: 12px; color: #61738e; background: rgba(255,255,255,.65); border-color: rgba(130,153,189,.17); }
.ws-pills button.active { color: #fff; background: var(--lg-primary); border-color: rgba(255,255,255,.6); box-shadow: 0 3px 9px rgba(44,116,216,.15),inset 0 1px rgba(255,255,255,.4); }
.ws-platform-row { gap: 8px; border-top-style: solid; }
.ws-platform-row button { height: 30px; background: rgba(238,243,252,.7); border-color: rgba(130,153,189,.13); font-size: 10px; }
.ws-category-grid { gap: 12px; }
.ws-category-grid button { min-height: 120px; padding: 17px; }
.ws-category-grid span { width: 36px; height: 36px; border-radius: 12px; background: linear-gradient(150deg,#eff8ff,#dbeaff); border: 1px solid rgba(255,255,255,.9); color: #3d82d8; }
.ws-category-grid button:nth-child(3n+2) span { color: #7f6bd6; background: linear-gradient(150deg,#f3efff,#e6e0ff); }
.ws-category-grid button:nth-child(3n) span { color: #319686; background: linear-gradient(150deg,#ecfbf7,#daf0e9); }
.ws-category-grid b { font-size: 13px; }
.ws-category-grid small { font-size: 10px; color: #7889a1; }
.ws-side-card h3 { font-size: 21px; letter-spacing: -.04em; }
.ws-side-card p { font-size: 12px; line-height: 1.8; }
.ws-side-card > b { font-size: 12px; }
.ws-side-card button { min-height: 43px; font-size: 12px; }
.ws-side-vip { background: linear-gradient(145deg,rgba(221,232,253,.8),rgba(235,224,251,.68)); color: #344d75; }
.ws-side-vip h3 { color: #344d75; }
.ws-side-vip p { color: #64779a; }
.ws-side-icon { border-radius: 13px; background: rgba(230,239,252,.8); color: #568bd1; }
.ws-app-list { gap: 14px; }
.ws-app-card { min-height: 126px; padding: 16px; gap: 13px; border-radius: 24px; }
.ws-app-card img { border-radius: 19px; box-shadow: 0 5px 12px rgba(40,65,103,.14),0 0 0 1px rgba(255,255,255,.7); }
.ws-app-copy h3 { font-size: 15px; font-weight: 700; letter-spacing: -.025em; }
.ws-app-copy p { height: 35px; font-size: 11px; line-height: 1.65; color: #697c97; }
.ws-app-tags { gap: 4px; margin-top: 7px; }
.ws-app-tags span { padding: 3px 5px; border-radius: 6px; background: rgba(219,229,245,.42); color: #667b98; font-size: 8px; }
.ws-get { min-width: 48px; height: 31px; padding: 0 10px; border: 1px solid rgba(255,255,255,.9); background: rgba(222,237,255,.8); color: #1768cd; font-size: 11px; font-weight: 700; box-shadow: inset 0 1px #fff,0 3px 7px rgba(80,120,175,.05); }
.ws-featured-grid { gap: 12px; }
.ws-featured-grid .ws-app-card { min-height: 120px; padding-bottom: 20px; }
.ws-featured-grid .ws-app-copy { padding-bottom: 16px; }
.ws-featured-grid .ws-get { bottom: 10px; right: 14px; height: 27px; font-size: 10px; }
/* Device identity: keep UDID private to its existing home panel. */
.ws-device-bar { padding: 16px 18px; margin-bottom: 20px; min-height: 64px; border-radius: 22px; }
.ws-device-bar.is-ready, .ws-device-bar.is-vip { background: linear-gradient(125deg,rgba(255,255,255,.78),rgba(227,248,239,.62)); border-color: rgba(169,219,192,.6); }
.ws-device-copy b { font-size: 13px; }
.ws-device-copy small { color: #74849a; font-size: 10px; }
.ws-device-meta > span { background: rgba(255,255,255,.45); border-color: rgba(182,206,194,.32); border-radius: 13px; }
.ws-device-meta small { color: #728775; font-size: 9px; }
.ws-device-meta b { color: #314e42; font-size: 11px; }
.ws-device-actions button { min-height: 38px; border-radius: 12px; border-color: rgba(156,184,213,.26); background: rgba(255,255,255,.65); }
.ws-udid-line code { color: #426452; font-size: 10px; }
.ws-context-device { padding: 17px 20px; gap: 14px; }
.ws-context-device small { font-size: 10px; color: #74849a; }
.ws-context-device b { font-size: 14px; }
.ws-context-device > span { color: #277954; font-size: 11px; }
.ws-context-device button { min-height: 36px; border-radius: 11px; background: rgba(222,236,255,.7); }
/* Detail, resources, certificates and help share the same material hierarchy. */
.ws-detail-hero { border-bottom-color: rgba(100,133,178,.13); padding: 18px 0 30px; }
.ws-detail-hero > img { border-radius: 29px; border: 1px solid rgba(255,255,255,.7); box-shadow: 0 12px 24px rgba(51,79,122,.15); }
.ws-detail-copy h1 { font-size: 36px; color: #233d60; }
.ws-detail-copy small { font-size: 11px; color: #6c809c; }
.ws-detail-copy p { font-size: 13px; color: #5d718e; line-height: 1.8; }
.ws-detail-copy em { border-color: rgba(132,159,195,.23); color: #5b789e; font-size: 10px; }
.ws-detail-badges span { border-color: rgba(117,163,218,.2); background: rgba(217,234,254,.8); color: #3c75b5; font-size: 9px; }
.ws-detail-badges span:nth-child(2) { border-color: rgba(118,180,146,.18); background: rgba(219,244,232,.85); color: #2d845d; }
.ws-detail-badges span:nth-child(3) { border-color: rgba(174,148,207,.18); background: rgba(236,225,250,.8); color: #8362ac; }
.ws-detail-stats small { color: #7286a0; font-size: 9px; }
.ws-detail-stats b { font-size: 11px; color: #355477; }
.ws-detail-stats div { border-color: rgba(132,159,195,.13); }
.ws-download-option { min-height: 90px; padding: 18px; border-radius: 22px; }
.ws-download-option > span { border-radius: 14px; background: var(--lg-primary); box-shadow: inset 0 1px rgba(255,255,255,.5),0 4px 8px rgba(43,118,216,.18); }
.ws-download-option h3 { font-size: 15px; color: #304e73; }
.ws-download-option p { font-size: 11px; color: #6b7f99; }
.ws-download-option > b { background: rgba(220,235,255,.9); color: #256bc4; min-width: 50px; font-size: 11px; }
.ws-detail-tip { font-size: 11px; line-height: 1.7; }
.ws-install-steps li { padding: 17px; border-radius: 18px; }
.ws-install-steps li > span { border-radius: 10px; background: rgba(219,235,255,.8); color: #3677ca; }
.ws-install-steps h3 { font-size: 13px; color: #3a5679; }
.ws-install-steps p { font-size: 11px; line-height: 1.8; }
.ws-feature-card h2 { font-size: 21px; }
.ws-feature-card span { border-color: rgba(145,165,196,.18); background: rgba(239,244,252,.52); border-radius: 14px; font-size: 10px; color: #7a8aa3; }
.ws-feature-card b { font-size: 10px; color: #486283; }
.ws-platform-grid button { min-height: 92px; padding: 16px; border-radius: 18px; }
.ws-platform-grid button span { color: #7e90a9; font-size: 10px; }
.ws-platform-grid button b { color: #3c567a; font-size: 16px; }
.ws-rom-note { padding: 22px; }
.ws-rom-note p { font-size: 12px; line-height: 1.8; }
.ws-plan { padding: 32px; border-radius: 29px; }
.ws-plan.is-featured { border: 1px solid rgba(255,255,255,.95); background: linear-gradient(140deg,rgba(255,255,255,.85),rgba(230,238,255,.65)); }
.ws-plan-icon { background: rgba(221,234,255,.7); border: 1px solid #fff; border-radius: 15px; }
.ws-plan-tag, .ws-plan.is-featured .ws-plan-tag { color: #537cac; background: rgba(222,235,255,.7); font-size: 10px; }
.ws-plan h2 { color: #2d4c73; font-size: 27px; }
.ws-plan > p, .ws-plan li { font-size: 13px; line-height: 1.85; }
.ws-price b { color: #315f9a; font-size: 48px; font-weight: 650; letter-spacing: -.06em; }
.ws-price small { font-size: 11px; color: #7588a3; }
.ws-price span { font-size: 12px; }
.ws-plan > button { min-height: 48px; font-size: 14px; }
.ws-vip-info h3 { font-size: 14px; }
.ws-vip-info p { font-size: 11px; line-height: 1.7; }
.ws-vip-entitlement { background: linear-gradient(125deg,rgba(250,249,232,.83),rgba(232,249,239,.73)); border-color: rgba(220,218,170,.5); border-radius: 27px; box-shadow: var(--ws-shadow); }
.ws-support-links button { min-height: 88px; padding: 18px; border-radius: 21px; }
.ws-support-links b { font-size: 14px; color: #3b587d; }
.ws-support-links small { font-size: 11px; color: #7486a0; }
.ws-guide-head { padding: 25px; background: linear-gradient(125deg,rgba(212,233,255,.85),rgba(228,225,250,.8)); }
.ws-guide-head h2 { color: #365d8f; font-size: 25px; }
.ws-guide-head small { color: #6286b0; font-size: 10px; }
.ws-guide-head p { color: #69819e; font-size: 12px; line-height: 1.8; }
.ws-step-grid { padding: 20px; }
.ws-step-grid article { border: 1px solid rgba(125,155,195,.16); background: rgba(255,255,255,.6); border-radius: 18px; min-height: 94px; }
.ws-step-grid article:first-child { border: 1px solid rgba(126,170,232,.25); background: rgba(222,237,255,.7); color: #3769a7; }
.ws-step-grid article:first-child > span { background: rgba(255,255,255,.8); color: #3578ce; }
.ws-step-grid article:first-child p, .ws-step-grid p { color: #6c819f; font-size: 10px; line-height: 1.7; }
.ws-step-grid h3 { font-size: 13px; }
.ws-faq summary { min-height: 62px; font-size: 14px; line-height: 1.7; gap: 12px; }
.ws-faq details p { font-size: 12px; color: #687d9a; line-height: 1.9; }
.ws-query-callout { background: linear-gradient(125deg,rgba(210,230,255,.8),rgba(224,223,246,.75)); color: #38577f; border: 1px solid rgba(255,255,255,.85); border-radius: 25px; }
.ws-query-callout small { color: #6b86ad; font-size: 9px; }
.ws-query-callout h2 { color: #38577f; font-size: 24px; }
.ws-query-callout p { color: #6a7e9b; font-size: 12px; }
/* Signing and query form: preserve display/hidden rules and every existing field. */
#Home.ws-sign-page { max-width: 960px !important; }
#Home .ws-subpage-head, #Query .ws-subpage-head { min-height: 132px; padding: 26px 30px; margin-bottom: 24px; }
.ws-subpage-head > div { min-width: 0; }
.ws-subpage-head h1 { font-size: 31px; }
.ws-subpage-head small { color: #6e8db3; font-size: 10px; letter-spacing: .14em; }
.ws-subpage-head p { font-size: 12px; }
.ws-subpage-head > button:first-child { width: 44px; height: 44px; flex-basis: 44px; border: 1px solid #fff; background: rgba(255,255,255,.5); color: #5283bb; border-radius: 15px; box-shadow: inset 0 1px #fff,0 3px 10px rgba(88,122,173,.06); }
.ws-sub-action { height: 42px; font-size: 12px; background: rgba(255,255,255,.65); color: #417abf; border: 1px solid rgba(255,255,255,.9); border-radius: 13px; }
#Home .card.sign-card, #Query .card.sign-card {
  border: 1px solid rgba(255,255,255,.95) !important; border-radius: 29px !important;
  background: rgba(255,255,255,.67) !important; box-shadow: var(--ws-shadow) !important; overflow: visible;
}
#Home .sign-card > .content, #Query .sign-card > .content { padding: 30px !important; }
#Home .field-label, #Query .field-label { color: #5b7190 !important; font-size: 12px !important; letter-spacing: .03em !important; font-weight: 650 !important; }
#Home .input-style, #Query .input-style { margin-bottom: 23px !important; }
#Home .field-row, #Query .field-row { gap: 10px; min-width: 0; }
#Home .form-control, #Query .form-control, #applist {
  min-height: 52px !important; border-radius: 15px !important; border: 1px solid rgba(124,152,190,.17) !important;
  background: rgba(236,242,252,.65) !important; color: #2e4b72 !important;
  box-shadow: inset 0 1px 3px rgba(61,86,124,.035) !important; font-size: 14px !important;
}
#Home input.form-control:focus, #Query input.form-control:focus { background: rgba(255,255,255,.9) !important; border-color: rgba(60,129,230,.6) !important; box-shadow: 0 0 0 4px rgba(50,129,238,.08) !important; }
#Home .form-control::placeholder, #Query .form-control::placeholder { color: #8494ac !important; }
#Home input, #Query input { scroll-margin-bottom: 140px; }
#Home .ws-sign-device-row { background: rgba(255,255,255,.45); border: 1px solid rgba(136,169,207,.2); padding: 13px 16px; border-radius: 20px; }
.ws-sign-device-summary > span { background: rgba(224,237,255,.75); color: #538bce; border: 1px solid #fff; border-radius: 14px; }
.ws-sign-device-summary b { color: #355377; font-size: 16px; }
.ws-sign-device-summary small { color: #7a8fa9; font-size: 12px; }
#Home .btn-mini, #Query .btn-mini { min-height: 42px; font-size: 12px !important; }
#Home .st-install-btn, #Query .st-install-btn { min-height: 54px !important; font-size: 15px !important; font-weight: 700 !important; }
#Home .cert-type-panel { background: rgba(236,242,252,.45); border: 1px solid rgba(143,171,205,.17); box-shadow: none; border-radius: 22px; padding: 17px; }
#Home .cert-type-card { border: 1px solid rgba(149,176,212,.25); background: rgba(255,255,255,.62); border-radius: 17px; box-shadow: none; }
#Home .cert-type-card.is-selected { border-color: rgba(82,144,232,.45); background: linear-gradient(135deg,rgba(255,255,255,.85),rgba(219,236,255,.65)); }
#Home .cert-type-title { color: #3e628e; }
#Home .cert-type-price { color: #446d9e; font-weight: 650; }
#Home .cert-type-desc, #Home .cert-type-summary { color: #6c809b; }
#Home .ws-activation-state { border-radius: 18px; box-shadow: inset 0 1px rgba(255,255,255,.85); }
#Home .ws-activation-state[data-state="active"] { background: linear-gradient(120deg,rgba(229,249,240,.7),rgba(240,248,235,.8)); border-color: rgba(165,212,185,.4); }
#Home .ws-activation-state[data-state="active"] b { color: #287c56; }
.ws-activation-state button, .ws-query-tools button, #Query .ws-query-clear { min-height: 38px; border-radius: 12px; background: rgba(255,255,255,.7); border: 1px solid rgba(139,166,200,.2); color: #577ca9; }
#Home .st-fold, #Home .st-inline-accordion, #Query .st-fold { border: 1px solid rgba(139,166,200,.17) !important; border-radius: 18px !important; background: rgba(244,248,254,.5) !important; box-shadow: none !important; overflow: hidden; }
#Home .st-fold-btn { min-height: 52px !important; color: #5b7597 !important; font-size: 12px !important; }
#Home .st-fold-btn i:first-child { color: #7d9dc3 !important; }
#Home .st-fold-body { color: #6e829f !important; background: rgba(255,255,255,.55) !important; border-top-color: rgba(133,163,201,.12) !important; font-size: 12px !important; line-height: 1.85; }
#Query.ws-query-page { max-width: 960px; }
.ws-query-tools small { font-size: 11px; line-height: 1.7; }
/* Dialogs and success results. CSS does not alter any visibility state. */
#gg-modal { background: rgba(38,58,89,.24) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; }
#gg-modal > div { border-radius: 30px !important; border: 1px solid rgba(255,255,255,.95) !important; background: rgba(249,252,255,.9) !important; box-shadow: 0 26px 80px rgba(32,66,120,.24),inset 0 1px #fff !important; }
#gg-modal > div > div:first-child { padding: 21px 24px !important; background: linear-gradient(125deg,rgba(230,241,255,.8),rgba(237,230,250,.8)) !important; }
#gg-modal > div > div:first-child > span { color: #405f89 !important; font-size: 18px !important; font-weight: 700 !important; }
#gg-modal > div > div:first-child button { color: #587ba6 !important; border: 1px solid rgba(255,255,255,.85) !important; background: rgba(255,255,255,.65) !important; border-radius: 50% !important; width: 36px !important; height: 36px !important; }
#gg-modal > div > div:last-child { padding: 24px !important; }
#gg-modal > div > div:last-child button { background: var(--lg-primary) !important; color: #fff !important; min-height: 44px; border-radius: 14px !important; box-shadow: 0 5px 12px rgba(35,108,209,.17),inset 0 1px rgba(255,255,255,.5) !important; }
#gg-modal input { accent-color: #287ce7; width: 17px; height: 17px; }
.layui-layer, .st-modal { border: 1px solid rgba(255,255,255,.92) !important; border-radius: 27px !important; background: rgba(249,252,255,.94) !important; color: #355377 !important; box-shadow: 0 24px 70px rgba(43,73,121,.2) !important; -webkit-backdrop-filter: blur(24px); backdrop-filter: blur(24px); }
.layui-layer-title { border-bottom-color: rgba(138,164,200,.15) !important; background: rgba(232,241,255,.55) !important; border-radius: 27px 27px 0 0; color: #42638d !important; }
.layui-layer-content { color: #426080; line-height: 1.8 !important; }
.layui-layer-btn a { border-radius: 13px !important; }
.layui-layer-btn .layui-layer-btn0 { background: #297de9 !important; border-color: #297de9 !important; }
.layui-layer-dialog .layui-layer-content { overflow-wrap: anywhere; }
.layui-layer-msg { background: rgba(239,247,255,.95) !important; color: #345781 !important; }
.menu-hider { background: rgba(33,53,86,.25); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.st-modal-title { color: #365981 !important; }
.st-modal-card { background: rgba(228,238,253,.45) !important; border: 1px solid rgba(150,178,212,.2) !important; border-radius: 17px !important; }
.st-modal-card p { color: #577391 !important; }
.close-menu { background: rgba(226,237,254,.7); color: #5782b7; border-color: #fff; }
#wsCopyNotice:not(:empty) { max-width: calc(100% - 32px); white-space: normal; text-align: center; background: rgba(242,249,255,.92); color: #3d6796; border: 1px solid #fff; box-shadow: 0 12px 32px rgba(47,80,128,.18); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }
/* Finish the shell. */
.ws-footer { border-top-color: rgba(131,160,200,.18); margin-top: 16px; padding-top: 28px; }
.ws-footer p, .ws-footer button { color: #7386a2; font-size: 11px; line-height: 1.9; }
.ws-footer > small { color: #8293aa; font-size: 10px; }
.ws-service-fab { border-radius: 16px; background: rgba(255,255,255,.68); color: #4279b9; border: 1px solid #fff; box-shadow: 0 6px 20px rgba(65,105,157,.14),inset 0 1px #fff; -webkit-backdrop-filter: var(--lg-blur); backdrop-filter: var(--lg-blur); font-size: 12px; }
/* The moving selection lens lives in the existing navigation, not a second click layer. */
.st-bar.lg-nav-ready::after {
  content: ''; position: absolute; top: 6px; left: 0; height: calc(100% - 12px); width: var(--lg-nav-w,20%);
  transform: translateX(var(--lg-nav-x,0px)); border-radius: 25px; pointer-events: none;
  background: linear-gradient(150deg,rgba(255,255,255,.96),rgba(215,233,255,.8));
  border: 1px solid rgba(255,255,255,.95); box-shadow: 0 3px 12px rgba(62,102,159,.11),inset 0 1px #fff,inset 0 -1px 2px rgba(102,149,209,.14);
  transition: transform .42s var(--lg-ease),width .42s var(--lg-ease); z-index: 0;
}
@media (hover:hover) and (pointer:fine) {
  .ws-app-card:hover, .ws-category-grid button:hover, .ws-platform-grid button:hover, .ws-download-option:hover { transform: translateY(-3px); background: rgba(255,255,255,.9); border-color: #fff; box-shadow: 0 16px 32px rgba(57,94,149,.12),inset 0 1px #fff; }
  .ws-get:hover { background: #d3e8ff; }
  .ws-btn-gold:hover, .ws-search-card button:hover { filter: brightness(1.04); }
}
@media (min-width:1101px) and (max-width:1280px) {
  .st-head { gap: 10px !important; }
  .ws-head-tools > label { display: none; }
  .ws-style-toggle { display: none; }
}
@media (min-width:761px) and (max-width:1100px) {
  .ws-head-tools > label { display: flex; width: clamp(160px,24vw,240px); }
  .ws-home-grid { grid-template-columns: minmax(0,1fr) 250px; gap: 18px; }
  .ws-featured-grid { grid-template-columns: 1fr; }
  .ws-detail-hero { grid-template-columns: 100px minmax(0,1fr); }
  .ws-detail-stats { grid-column: 1/-1; grid-template-columns: repeat(4,minmax(0,1fr)); }
  .ws-detail-stats div { border-bottom: 0; }
  .ws-detail-grid { grid-template-columns: minmax(0,1fr) 280px; gap: 20px; }
}
@media (max-width:1100px) {
  html { scroll-padding-top: 112px; }
  body { padding-bottom: calc(106px + env(safe-area-inset-bottom,0px)) !important; }
  .st-head { width: calc(100% - 32px) !important; }
  .ws-desktop-nav, .ws-platform-strip { display: none; }
  .ws-style-toggle { display: flex; }
  #changebg.page-content { padding-top: calc(108px + env(safe-area-inset-top,0px)) !important; padding-bottom: 22px !important; }
  .ws-footer { margin-bottom: 0; }
  .ws-service-fab { display: none; }
  .st-bar {
    position: fixed !important; inset: auto auto calc(12px + env(safe-area-inset-bottom,0px)) 50% !important;
    width: min(540px,calc(100% - 32px)) !important; height: 78px !important; padding: 6px !important;
    display: grid !important; grid-template-columns: repeat(5,minmax(0,1fr)) !important; gap: 3px;
    border: 1px solid rgba(255,255,255,.92) !important; border-radius: 32px !important;
    background: linear-gradient(120deg,rgba(255,255,255,.73),rgba(247,251,255,.55)) !important;
    box-shadow: 0 12px 35px rgba(42,75,126,.16),inset 0 1px #fff,inset 0 -1px 1px rgba(255,255,255,.75) !important;
    -webkit-backdrop-filter: blur(28px) saturate(170%); backdrop-filter: blur(28px) saturate(170%); transform: translateX(-50%) !important;
  }
  .st-bar button {
    position: relative; z-index: 1; min-width: 0 !important; height: 100% !important; padding: 8px 1px !important;
    display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important;
    gap: 5px !important; border: 0 !important; border-radius: 25px !important; background: transparent !important;
    color: #7284a0 !important; box-shadow: none !important;
  }
  .st-bar button i { font-size: 20px !important; margin: 0 !important; color: inherit !important; }
  .st-bar button span { font-size: 10px !important; font-weight: 650 !important; color: inherit !important; margin: 0 !important; }
  .st-bar button.active { color: #2974d6 !important; background: rgba(234,244,255,.75) !important; }
  .st-bar.lg-nav-ready button.active { background: transparent !important; }
  body.ws-detail-open .st-bar { display: none !important; }
  .ws-detail-actions {
    position: fixed; z-index: 240; inset: auto auto calc(12px + env(safe-area-inset-bottom,0px)) 50%; transform: translateX(-50%);
    width: min(540px,calc(100% - 32px)); height: 72px; padding: 7px; display: grid; grid-template-columns: 1fr 1.6fr; gap: 8px;
    border: 1px solid #fff; border-radius: 27px; background: rgba(255,255,255,.66); box-shadow: 0 10px 30px rgba(42,75,126,.16);
    -webkit-backdrop-filter: var(--lg-blur); backdrop-filter: var(--lg-blur);
  }
  .ws-detail-actions button { border: 1px solid rgba(255,255,255,.9); border-radius: 20px; background: rgba(240,246,255,.7); color: #5a7ba4; font-size: 13px; font-weight: 650; }
  .ws-detail-actions button:last-child { background: var(--lg-primary); color: #fff; border-color: rgba(255,255,255,.5); box-shadow: inset 0 1px rgba(255,255,255,.5),0 4px 10px rgba(46,116,212,.17); }
}
@media (max-width:760px) {
  html { scroll-padding-top: 104px; }
  .st-head { top: calc(10px + env(safe-area-inset-top,0px)) !important; width: calc(100% - 24px) !important; height: 66px !important; padding: 0 12px !important; border-radius: 23px !important; gap: 8px !important; }
  .ws-brand { gap: 9px; }
  .ws-brand > span { width: 38px; height: 38px; font-size: 23px; border-radius: 13px; }
  .ws-brand b { font-size: 15px; }
  .ws-brand small { font-size: 7px; }
  .ws-style-toggle { height: 32px; font-size: 8px; }
  .ws-style-toggle span, .ws-style-toggle b { padding: 5px 7px; }
  .ws-head-device { height: 36px; width: 36px; border-radius: 13px; }
  .ws-head-tools { gap: 6px; }
  #changebg.page-content, body.ws-detail-open #changebg.page-content { padding: calc(96px + env(safe-area-inset-top,0px)) 16px 20px !important; }
  .ws-footer { display: none; }
  .ws-device-bar { margin-bottom: 16px; border-radius: 21px; }
  .ws-device-bar.is-ready { padding: 15px; gap: 10px; min-height: 140px; }
  .ws-device-copy b { font-size: 13px; }
  .ws-udid-line code { font-size: 8px; }
  .ws-device-meta { gap: 8px; }
  .ws-device-meta > span { padding: 8px 10px; border-radius: 12px; }
  .ws-device-meta small { font-size: 9px; }
  .ws-device-meta b { font-size: 10px; }
  .ws-device-actions button { min-height: 38px; }
  .ws-device-bar.is-ready .ws-device-actions { grid-column: 2/-1; width: 100%; justify-content: stretch; margin: 0; }
  .ws-device-actions button { flex: 1; }
  .ws-hero { border-radius: 27px; }
  .ws-home-hero { min-height: 308px; padding: 29px 24px; }
  .ws-home-hero h1 { font-size: 38px; max-width: 300px; }
  .ws-hero p { font-size: 12px; line-height: 1.85; }
  .ws-hero-actions { gap: 9px; margin-top: 22px; }
  .ws-btn { min-width: 100px; min-height: 44px; padding: 0 17px; font-size: 12px; }
  .ws-kicker { font-size: 8px; padding: 7px 10px; }
  .ws-library-hero, .ws-rom-hero, .ws-vip-hero, .ws-support-hero { min-height: 228px; padding: 27px 24px; gap: 12px; }
  .ws-library-hero h1, .ws-rom-hero h1, .ws-vip-hero h1, .ws-support-hero h1 { font-size: 30px; line-height: 1.25; margin: 15px 0 11px; }
  .ws-count { margin-left: 0; min-width: 45px; }
  .ws-count b { font-size: 43px; }
  .ws-count small { font-size: 7px; }
  .ws-hero-art { display: none; }
  .ws-vip-crown { width: 56px; height: 56px; border-radius: 19px; font-size: 25px; }
  .ws-help-icon { display: none; }
  .ws-home-grid { display: block; }
  .ws-search-card { min-height: 56px; margin: 16px 0; padding-left: 15px; border-radius: 18px; gap: 9px; }
  .ws-search-card input { font-size: 13px; }
  .ws-search-card button { padding: 0 17px; min-height: 40px; font-size: 12px; border-radius: 13px !important; }
  .ws-title-row { gap: 10px; margin-bottom: 14px; }
  .ws-title-row h2 { font-size: 23px; }
  .ws-category-grid { gap: 9px; }
  .ws-category-grid button { min-height: 104px; padding: 12px 10px; border-radius: 21px; }
  .ws-category-grid span { width: 31px; height: 31px; border-radius: 11px; }
  .ws-category-grid b { font-size: 11px; }
  .ws-featured-head { margin-top: 28px; }
  .ws-featured-grid { grid-template-columns: 1fr; }
  .ws-featured-grid .ws-app-card { min-height: 112px; grid-template-columns: 62px minmax(0,1fr) auto; padding: 14px; }
  .ws-featured-grid .ws-app-copy { padding-bottom: 0; }
  .ws-featured-grid .ws-get { position: static; height: 31px; font-size: 11px; }
  .ws-filter-card, .ws-rom-panel, .ws-faq, .ws-feature-card { padding: 19px; border-radius: 24px; margin-top: 16px; }
  .ws-filter-card .ws-search-card { margin-bottom: 17px; padding-left: 12px; }
  .ws-filter-label { flex-wrap: wrap; gap: 5px 9px; }
  .ws-filter-label small { font-size: 9px; }
  .ws-pills { gap: 7px; }
  .ws-pills button { min-height: 36px; height: auto; padding: 7px 14px; font-size: 11px; }
  .ws-platform-row { padding-top: 13px; gap: 6px; }
  .ws-platform-row > span { font-size: 7px; }
  .ws-platform-row button { flex-shrink: 0; }
  .ws-app-list { grid-template-columns: 1fr; gap: 11px; }
  .ws-app-card { min-height: 115px; grid-template-columns: 62px minmax(0,1fr) auto; gap: 11px; padding: 14px; border-radius: 24px; }
  .ws-app-card img { width: 62px; height: 62px; border-radius: 18px; }
  .ws-app-copy h3 { font-size: 14px; }
  .ws-app-copy p { font-size: 10px; height: 32px; }
  .ws-app-tags span { font-size: 7px; padding: 3px 4px; }
  .ws-get { min-width: 44px; padding: 0 9px; }
  .ws-collection { padding-top: 25px; }
  .ws-context-device { padding: 15px; gap: 10px; border-radius: 22px; flex-wrap: wrap; }
  .ws-context-device b { font-size: 13px; }
  .ws-context-device > span { font-size: 10px; }
  .ws-detail-topbar { background: transparent; border: 0; padding: 0; margin: 0 0 14px; }
  .ws-detail-topbar button, .ws-detail-topbar > span { border-color: rgba(255,255,255,.9); border-radius: 12px; background: rgba(255,255,255,.6); color: #5c80ad; }
  .ws-detail-topbar b { font-size: 11px; }
  .ws-detail-hero { padding: 10px 0 24px; }
  .ws-detail-hero > img { width: 110px; height: 110px; border-radius: 30px; }
  .ws-detail-copy h1 { font-size: 30px; overflow-wrap: anywhere; }
  .ws-detail-copy p { font-size: 12px; }
  .ws-detail-stats { border-radius: 20px; }
  .ws-detail-stats small { font-size: 8px; }
  .ws-detail-stats b { font-size: 10px; }
  .ws-detail-grid { padding-top: 24px; }
  .ws-download-option { min-height: 85px; padding: 15px; gap: 11px; }
  .ws-download-option h3 { font-size: 14px; }
  .ws-download-option p { font-size: 10px; }
  .ws-detail-tip { margin: 12px 0 22px; font-size: 10px; }
  .ws-feature-card > div { gap: 8px; }
  .ws-feature-card h2 { font-size: 21px; }
  .ws-platform-grid { gap: 8px; }
  .ws-platform-grid button { min-height: 80px; padding: 12px; border-radius: 16px; }
  .ws-platform-grid button b { font-size: 14px; }
  .ws-rom-note { padding: 17px; border-radius: 22px; }
  .ws-rom-note p { font-size: 11px; }
  .ws-plan { padding: 25px; border-radius: 27px; }
  .ws-plan h2 { font-size: 25px; }
  .ws-plan > p, .ws-plan li { font-size: 12px; }
  .ws-support-links { gap: 9px; }
  .ws-support-links button { min-height: 74px; padding: 15px 18px; }
  .ws-support-links b { font-size: 13px; }
  .ws-support-links small { font-size: 10px; }
  .ws-guide { border-radius: 24px; }
  .ws-guide-head { padding: 23px; }
  .ws-guide-head h2 { font-size: 23px; }
  .ws-guide-head p { font-size: 11px; }
  .ws-step-grid { padding: 15px; gap: 9px; }
  .ws-step-grid article { min-height: 80px; padding: 14px; }
  .ws-step-grid p { font-size: 11px; }
  .ws-faq summary { font-size: 13px; }
  .ws-faq details p { font-size: 12px; padding-right: 0; }
  .ws-query-callout { padding: 23px; border-radius: 24px; }
  .ws-query-callout h2 { font-size: 23px; }
  #Home .ws-subpage-head, #Query .ws-subpage-head { min-height: 110px; padding: 21px; border-radius: 25px; gap: 13px; margin-bottom: 20px; }
  .ws-subpage-head h1, #Home .ws-subpage-head h1 { font-size: 25px !important; }
  .ws-subpage-head small { font-size: 8px; }
  #Home .sign-card > .content, #Query .sign-card > .content { padding: 20px !important; }
  #Home .card.sign-card, #Query .card.sign-card { border-radius: 25px !important; }
  #Home .ws-sign-device-row { padding: 10px 12px; border-radius: 18px; }
  .ws-sign-device-summary { gap: 9px; }
  .ws-sign-device-summary > span { flex-basis: 34px; height: 38px; border-radius: 12px; }
  .ws-sign-device-summary b { font-size: 13px; }
  .ws-sign-device-summary small { font-size: 10px; }
  #Home .btn-mini { padding: 10px !important; min-height: 39px; font-size: 11px !important; }
  #Home .cert-type-panel { padding: 13px; border-radius: 19px; }
  #Home .cert-type-head { flex-wrap: wrap; gap: 6px; }
  #Home .cert-type-hint { font-size: 10px; }
  #Home .cert-type-price { font-size: 18px; }
  .ws-activation-state { padding: 13px; gap: 10px; }
  .ws-activation-state p { font-size: 11px; }
  .ws-query-tools { gap: 9px; }
  #Query .field-row { flex-wrap: wrap; }
  #QueryUDID { flex-basis: 160px; }
  #gg-modal > div { width: min(390px,100%) !important; border-radius: 27px !important; }
  .st-modal { max-height: calc(100dvh - 48px); }
}
@media (max-width:359px) {
  .ws-style-toggle { display: none; }
  .ws-brand b { font-size: 14px; }
  .ws-home-hero { padding: 25px 21px; }
  .ws-home-hero h1 { font-size: 33px; }
  .ws-hero-actions { flex-wrap: wrap; }
  .ws-count { display: none; }
  .ws-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ws-app-card, .ws-featured-grid .ws-app-card { grid-template-columns: 50px minmax(0,1fr) auto; padding: 12px; gap: 9px; }
  .ws-app-card img, .ws-featured-grid .ws-app-card img { width: 50px; height: 50px; border-radius: 15px; }
  .ws-app-copy h3 { font-size: 13px; }
  .ws-app-tags span:nth-child(n+2) { display: none; }
  .ws-get { min-width: 40px; font-size: 10px; }
  #Home .ws-sign-device-summary { flex-basis: 100%; }
  #Home .ws-sign-device-row { flex-wrap: wrap; }
  #Home .ws-sign-device-row .btn-mini { width: 100%; }
  .ws-activation-state { flex-wrap: wrap; }
  .ws-activation-state > div { min-width: 125px; }
  .ws-activation-state button { margin-left: auto; }
  #Home .cert-type-card-top { align-items: start; flex-wrap: wrap; gap: 10px; }
}
/* Accessibility and older WebKit: never depend on blur or motion for meaning. */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .st-head, .st-bar, .ws-detail-actions { background: #f7faff !important; }
  .ws-app-card, .ws-filter-card, .ws-side-card, .ws-plan, .ws-faq { background: #fbfcff; }
}
@media (prefers-reduced-transparency:reduce), (prefers-contrast:more) {
  .st-head, .st-bar, .ws-detail-actions, .ws-device-bar, .ws-app-card, .ws-filter-card,
  .ws-side-card, .ws-plan, .ws-faq, .ws-feature-card, #Home .sign-card, #Query .sign-card {
    background: #fbfcff !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; border-color: #b5c5db !important;
  }
  .ws-app-copy p, .ws-plan > p, .ws-faq details p, .ws-hero p { color: #455c7d; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
  button:active, .btn:active, .ws-app-card:hover { transform: none !important; }
}
/* Native-like bottom sheet for the retained application picker. */
.mobileSelect .grayLayer { background: rgba(32,57,91,.26) !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.mobileSelect .content { border-radius: 28px 28px 0 0; overflow: hidden; border: 1px solid #fff; background: rgba(247,251,255,.96); box-shadow: 0 -15px 50px rgba(48,78,123,.15); }
.mobileSelect .content .btnBar { border-bottom-color: rgba(137,166,206,.17); }
.mobileSelect .content .btnBar .ensure { color: #2876dd; }
.mobileSelect .content .btnBar .cancel { color: #7c8da6; }
.mobileSelect .content .panel .selectLine { border-color: rgba(108,157,220,.2); background: rgba(225,237,254,.25); pointer-events: none; }
@media (max-width:760px) {
  #Home input.form-control, #Query input.form-control { font-size: 16px !important; }
}
#gg-modal > div > div:last-child > div:last-child button { background: var(--lg-primary) !important; color: #fff !important; box-shadow: 0 5px 12px rgba(35,108,209,.17),inset 0 1px rgba(255,255,255,.5) !important; }
.st-modal a.btn, .st-modal button.btn { border-radius: 13px !important; background: var(--lg-primary) !important; color: #fff !important; border-color: rgba(255,255,255,.6) !important; }
/* The old desktop sidebar label must never become a sixth grid item on iPad. */
.st-bar::before { display: none !important; content: none !important; }
:root { --qy-text:#355377; --qy-sub:#6f839e; --qy-green:#2879df; --qy-green-light:#e8f2ff; --qy-line:rgba(135,164,201,.19); --qy-soft-2:rgba(237,244,254,.65); }
#Home .cert-type-panel { background:rgba(236,242,252,.45) !important; border:1px solid rgba(143,171,205,.17) !important; border-radius:22px !important; }
#Home .cert-type-card { border:1px solid rgba(149,176,212,.25) !important; background:rgba(255,255,255,.62) !important; border-radius:17px !important; box-shadow:none !important; }
#Home .cert-type-card.is-selected { border-color:rgba(82,144,232,.45) !important; background:linear-gradient(135deg,rgba(255,255,255,.85),rgba(219,236,255,.65)) !important; box-shadow:inset 0 1px #fff !important; }
#Home .cert-type-title, #Home .cert-type-price { color:#446d9e !important; }
#Home .cert-type-desc, #Home .cert-type-summary, #Home .cert-type-hint { color:#6c809b !important; }
#Home .cert-type-badge { background:rgba(255,255,255,.7) !important; color:#5e80aa !important; border-color:rgba(145,173,209,.2) !important; }
#Home .cert-type-card.is-selected .cert-type-dot { border-color:#3983e3 !important; background:#3983e3 !important; box-shadow:inset 0 0 0 3px #e8f2ff !important; }
@media(max-width:760px) { #Query .field-row { flex-wrap:wrap !important; } #Home .cert-type-panel { border-radius:19px !important; } }
@media(max-width:359px) { #Home .ws-sign-device-row { flex-wrap:wrap !important; } }
#Desp .btn { min-height:44px; margin:6px 6px 0 0; white-space:normal; overflow-wrap:anywhere; }
.blockUI.blockOverlay { background:rgba(36,60,96,.24) !important; opacity:1 !important; -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.blockUI.blockMsg { width:min(620px,calc(100vw - 32px)) !important; max-width:calc(100vw - 32px); max-height:72vh; overflow:auto; left:50% !important; top:50% !important; transform:translate(-50%,-50%); margin:0 !important; padding:24px !important; border:1px solid rgba(255,255,255,.95) !important; border-radius:25px !important; background:rgba(247,251,255,.95) !important; color:#3b5d86 !important; box-shadow:0 24px 65px rgba(43,73,121,.22); font-size:13px; line-height:1.85; overflow-wrap:anywhere; }
.blockUI.blockMsg * { color:inherit !important; }

/* Authorized-device expiry on Discover only — 2026110605. */
#Discover .ws-device-expiry time { color:#314e42; font-size:11px; font-weight:650; white-space:nowrap; font-variant-numeric:tabular-nums; }
@media(max-width:760px) {
  #Discover .ws-device-meta > .ws-device-expiry { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 11px; }
  #Discover .ws-device-expiry time { font-size:11px; }
}

/* Actual certificate dates — never reuse authorization expiry. */
#Discover .ws-device-expiry[data-certificate-time-state="expired"] time { color:#b54d56; }
#Discover .ws-device-expiry[data-certificate-time-state="not_yet_valid"] time { color:#966d2c; }

/* User-initiated Taobao authorization-code purchase entry — 2026110701. */
.ws-shop-card { position:relative; display:flex; align-items:center; gap:20px; padding:23px 26px; margin:0 0 20px; border:1px solid rgba(255,255,255,.95); border-radius:25px; background:radial-gradient(ellipse at 0 0,rgba(255,215,180,.32),transparent 62%),linear-gradient(125deg,rgba(255,255,255,.84),rgba(255,248,238,.7)); box-shadow:var(--ws-shadow); }
.ws-shop-mark { display:grid; place-items:center; flex:0 0 52px; height:52px; color:#de702d; font-size:28px; font-weight:750; border:1px solid rgba(255,255,255,.95); border-radius:17px; background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(255,222,187,.7)); box-shadow:inset 0 1px #fff,0 5px 14px rgba(177,113,59,.08); }
.ws-shop-copy { min-width:0; flex:1; }
.ws-shop-copy small { color:#9a7a5f; font-size:9px; font-weight:650; letter-spacing:.12em; }
.ws-shop-copy h2 { margin:5px 0 6px; color:#614832; font-size:23px; font-weight:730; letter-spacing:-.035em; line-height:1.3; }
.ws-shop-copy p { margin:0; color:#8b7869; font-size:12px; line-height:1.8; }
.ws-shop-actions { display:grid; justify-items:center; gap:8px; flex-shrink:0; }
.ws-shop-card .ws-shop-link { display:inline-flex; justify-content:center; align-items:center; gap:13px; min-height:45px; padding:0 22px; border:1px solid rgba(255,255,255,.6); border-radius:15px; color:#fff !important; text-decoration:none !important; white-space:nowrap; font-size:13px; font-weight:700; background:linear-gradient(155deg,#ffb572,#f28b42 48%,#e87129); box-shadow:0 5px 12px rgba(211,119,48,.19),inset 0 1px rgba(255,255,255,.7),inset 0 -1px rgba(145,68,18,.12); transition:transform .25s var(--lg-ease),box-shadow .25s ease; }
.ws-shop-card .ws-shop-web { min-height:26px; display:inline-flex; align-items:center; gap:6px; color:#9c7556; font-size:10px; text-decoration:none; }
.ws-shop-card .ws-shop-link:active { transform:scale(.97); }
@media(hover:hover) { .ws-shop-card .ws-shop-link:hover { box-shadow:0 8px 18px rgba(211,119,48,.25),inset 0 1px rgba(255,255,255,.7); } .ws-shop-card .ws-shop-web:hover { text-decoration:underline; } }
@media(max-width:760px) {
  .ws-shop-card { display:grid; grid-template-columns:42px minmax(0,1fr); gap:13px; padding:20px; margin-bottom:17px; border-radius:23px; }
  .ws-shop-mark { width:42px; height:44px; font-size:24px; border-radius:15px; align-self:start; }
  .ws-shop-copy small { font-size:8px; }
  .ws-shop-copy h2 { font-size:21px; margin-top:5px; }
  .ws-shop-copy p { font-size:11px; }
  .ws-shop-actions { grid-column:1 / -1; width:100%; grid-template-columns:minmax(0,1fr) auto; align-items:center; justify-items:stretch; gap:14px; margin-top:1px; }
  .ws-shop-card .ws-shop-link { min-height:44px; padding:0 15px; font-size:12px; }
  .ws-shop-card .ws-shop-web { min-height:36px; font-size:10px; }
}
@media(max-width:359px) { .ws-shop-card { padding:17px; gap:11px; } .ws-shop-actions { grid-template-columns:1fr; gap:5px; } .ws-shop-card .ws-shop-web { justify-content:center; min-height:30px; } }
@media(prefers-reduced-motion:reduce) { .ws-shop-card .ws-shop-link { transition:none; } .ws-shop-card .ws-shop-link:active { transform:none; } }
@media(prefers-contrast:more), (prefers-reduced-transparency:reduce) { .ws-shop-card { background:#fffaf5; border-color:#c9ac91; } .ws-shop-copy p { color:#705b49; } }
