/* Shared presentation layer; business scripts and data remain unchanged. */
body.lpg-glass {
  --ink:#172b44; --text:#172b44; --ink-soft:#405974; --muted:#52677d;
  --muted-strong:#405974; --bg:#edf3f9; --bg-soft:#f7faff;
  --surface:rgba(255,255,255,.82); --surface-strong:#fff; --surface-alt:#eef4fb;
  --paper:rgba(255,255,255,.84); --card:rgba(255,255,255,.84); --card-strong:#fff;
  --soft:#e9f1fa; --line:#d3dfea; --line-strong:#9fb7d2;
  --blue:#315d8d; --blue-dark:#25496e; --teal:#376687; --amber:#55789c;
  --brand:#315d8d; --brand-dark:#25496e; --brand-soft:#e8f0fa;
  --accent:#315d8d; --accent-strong:#25496e; --emerald:#237364; --gold:#89612b;
  --polish-bg:#edf3f9; --polish-bg-soft:rgba(255,255,255,.82); --polish-bg-strong:#f8fbff;
  --polish-ink:#172b44; --polish-muted:#52677d; --polish-blue:#315d8d;
  --polish-blue-dark:#25496e; --polish-green:#237364; --polish-soft:#eef4fb;
  --polish-line:#d3dfea; --polish-line-strong:#9fb7d2;
  --shadow:0 12px 38px #25496e0c; --shadow-soft:0 12px 38px #25496e0c;
  --shadow-card:0 8px 24px #25496e0b; --polish-shadow:0 12px 38px #25496e0c;
  margin:0; min-height:100vh; color:var(--ink); color-scheme:light;
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  background:radial-gradient(ellipse at 82% 0,#d9e6f5a3,transparent 48%),linear-gradient(160deg,#f8fbff,#ecf2f9 55%,#f8fbff);
  line-height:1.75; -webkit-font-smoothing:antialiased;
}
body.lpg-glass::before {content:none}
.lpg-glass :is(h1,h2,h3,h4) {color:var(--ink);font-family:inherit;letter-spacing:-.035em}
.lpg-glass :is(.hero,.page-hero,.intro) h1 {font-size:clamp(30px,4.2vw,54px);line-height:1.3;font-weight:550;letter-spacing:-.045em;text-wrap:balance}
.lpg-glass :is(.hero,.page-hero) {background:transparent}
.lpg-glass :is(.hero-copy,.hero-panel,.hero-side,.search-panel,.app-side,.card,.panel,.result-card,.entry-card,.match-card,.match-overview,.empty-state,.cta-panel,.service-card,.resource-card,.tool-card,.module-card,.knowledge-card,.summary-card) {
  background:var(--surface);color:var(--ink);border-color:var(--line);border-radius:24px;box-shadow:var(--shadow-card);
}
.lpg-glass :is(.trust-grid,.trust-strip,.section-band,.station-card,.helper-item,.workflow-card,.template-card,.stat-item,.flow-step,.mini-metric,.app-list-item,.scenario-sample,.hero-kpi,.hero-kpis,.knowledge-map-board) {background:#f7faff;color:var(--ink);border-color:var(--line)}
.lpg-glass :is(.hero-copy,.hero-side,.hero-panel)::before {opacity:.3}
.lpg-glass :is(.compat,.site-footer,footer) {background:#e5edf7;color:var(--ink);border-color:var(--line)}
.lpg-glass :is(.compat,.site-footer,footer) :is(p,a,span,small) {color:var(--muted)}
.lpg-glass :is(input:not([type=checkbox]):not([type=radio]),textarea,select) {background:#fff;color:var(--ink);border-color:#bdcedf;border-radius:12px;box-shadow:none;max-width:100%}
.lpg-glass :is(input,textarea)::placeholder {color:#61758b;opacity:1}
.lpg-glass :is(input[type=radio],input[type=checkbox]) {accent-color:#315d8d}
.lpg-glass :is(a,button,input,select,textarea,summary):focus-visible {outline:3px solid #7299c7;outline-offset:4px}
.lpg-glass :is(.btn,.btn-primary,.btn-secondary,.btn-outline,.btn-ghost,button,.hero-actions a) {border-radius:12px;min-height:44px;font-weight:600;letter-spacing:0;transition:background .2s,box-shadow .2s,transform .2s}
.lpg-glass :is(.btn-primary,.primary,.hero-primary,.nav-action,.download-btn,.topbar-links a.active,.mode-switch button.active) {background:#25496e;color:#fff;border-color:#25496e;box-shadow:0 5px 14px #25496e17}
.lpg-glass :is(.btn-primary,.primary,.hero-primary,.download-btn) * {color:inherit}
.lpg-glass :is(.btn-secondary,.secondary,.btn-outline,.btn-ghost,.ghost,.hero-secondary) {background:#f5f9ff;color:#25496e;border:1px solid #bccdde;box-shadow:none}
.lpg-glass :is(.resource-tag,.hero-tag,.tag,.pill,.kicker,.eyebrow) {color:#315d8d;border-color:#c5d5e5;background:#eaf2fc}
.lpg-glass :is(.workflow-card,.template-card) b {color:#25496e;background:#dfeaf7}
.lpg-glass .mini-metric strong {font-size:18px;line-height:1.5}
.lpg-glass .danger {color:#a82a28;background:#fff0ef}
.lpg-glass .success-banner {color:#1d684a;background:#e1f2e9}
.lpg-glass .section-chip {color:#7b531c;background:#fff4e2}
.lpg-glass .download-actions a {color:#25496e;background:#fff;border-radius:12px}
.lpg-glass .download-actions a.emphasis {color:#fff;background:#25496e}
.lpg-glass .motion-scene {display:none}
.lpg-glass .motion-line {display:none}
body.lpg-glass.motion-enhanced .motion-reveal {opacity:1;transform:none;transition:none}
.lpg-glass .page {padding-top:28px}
.lpg-glass :is(.hero-inner,.container,.page,main) {min-width:0}
.lpg-glass :is(.hero-shell,.hero-inner,.hero,.workspace,.grid) > * {min-width:0}
.lpg-glass pre {white-space:pre-wrap;overflow-wrap:anywhere}
.lpg-glass :is(td,th) {border-color:var(--line)}
.lpg-glass :is(.table-wrap,.table-scroll) {overflow-x:auto}

/* One navigation across the platform, independent of legacy page layouts. */
.lpg-glass .platform-header {
  position:relative;z-index:100;display:block;margin:18px auto 0;padding:0;
  width:min(1320px,calc(100% - 40px));border:1px solid #ffffffd9;border-radius:22px;
  background:#ffffffbd;color:#172b44;box-shadow:0 5px 30px #22456a08;backdrop-filter:blur(18px);
}
.platform-header .platform-bar {display:flex;align-items:center;gap:24px;min-height:76px;padding:14px 22px;flex-wrap:wrap}
.platform-header .platform-brand {color:#172b44;font-size:19px;font-weight:650;letter-spacing:-.03em;text-decoration:none;white-space:nowrap}
.platform-header .platform-nav {display:flex;align-items:center;gap:22px;margin-left:auto;flex-wrap:wrap}
.platform-header .platform-nav a,.platform-header summary {font-size:14px;line-height:1.5;color:#4a6078;text-decoration:none;padding:12px 0;cursor:pointer;list-style:none}
.platform-header .platform-nav a:hover,.platform-header .platform-nav a[aria-current=page] {color:#142e4b}
.platform-header summary::-webkit-details-marker {display:none}
.platform-header .platform-nav .platform-cta {padding:12px 18px;background:#25496e;color:#fff;border-radius:12px}
.platform-header details {position:relative}
.platform-header summary::after {content:" +";font-weight:500}
.platform-header details[open] summary::after {content:" −"}
.platform-header .platform-menu {position:absolute;right:0;top:44px;z-index:110;width:260px;padding:12px;display:grid;gap:2px;background:#f8fbff;border:1px solid #c8d8e8;border-radius:16px;box-shadow:0 16px 38px #18355226}
.platform-header .platform-menu a {display:block;border-radius:9px;padding:10px 12px}
.platform-header .platform-menu a:hover {background:#e6effa}

@media(max-width:900px) {
  .platform-header .platform-bar {gap:8px 18px}
  .platform-header .platform-nav {margin-left:0;flex:1;justify-content:flex-end;gap:15px}
}
@media(max-width:640px) {
  .lpg-glass .platform-header {width:calc(100% - 24px);margin-top:12px;border-radius:18px}
  .platform-header .platform-bar {padding:15px;display:block}
  .platform-header .platform-brand {font-size:18px}
  .platform-header .platform-nav {margin-top:12px;display:flex;justify-content:flex-start;gap:8px 18px}
  .platform-header .platform-nav > a {font-size:13px;padding:9px 0}
  .platform-header .platform-nav > a.platform-cta {padding:9px 12px}
  .platform-header .platform-menu {right:auto;left:-70px;width:min(260px,calc(100vw - 50px))}
  .lpg-glass :is(.hero-copy,.hero-panel,.hero-side,.search-panel,.app-side,.panel,.card) {border-radius:18px;padding:20px}
  .lpg-glass :is(.hero-shell,.hero-inner,.hero,.workspace) {grid-template-columns:minmax(0,1fr)}
  .lpg-glass :is(.workflow-grid,.template-grid) {grid-template-columns:minmax(0,1fr)}
  .lpg-glass :is(.container,.page) {max-width:100%}
  .lpg-glass :is(.hero,.page-hero) h1 {font-size:32px;line-height:1.35}
  .lpg-glass :is(.actions,.hero-actions,.toolbar) {gap:10px;flex-wrap:wrap}
  .lpg-glass .workspace {gap:18px}
}
@media(prefers-reduced-motion:reduce) {
  .lpg-glass {scroll-behavior:auto}
  .lpg-glass :is(.card,.hero,.page-hero,button,a) {animation:none;transition:none}
}
