:root {
  color-scheme: light;
  font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif;
  color: #14213d;
  background: #f4f7fb;
}

* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; }
.shell { width: min(1040px, calc(100% - 40px)); margin: 0 auto; padding: 72px 0; }
.hero { padding: 44px; border-radius: 22px; color: #fff; background: linear-gradient(135deg, #102553, #173f77 60%, #0b7f79); box-shadow: 0 24px 60px rgba(16, 37, 83, .18); }
.eyebrow { margin: 0 0 12px; color: #86eee0; font-weight: 700; letter-spacing: .12em; }
h1 { margin: 0; font-size: clamp(34px, 6vw, 58px); line-height: 1.08; }
.hero > p:not(.eyebrow) { max-width: 720px; margin: 20px 0; color: #d9e7f7; font-size: 18px; line-height: 1.75; }
.status { display: inline-flex; align-items: center; gap: 10px; padding: 10px 14px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; background: rgba(255,255,255,.1); }
.status span { width: 9px; height: 9px; border-radius: 50%; background: #44e0b4; box-shadow: 0 0 0 5px rgba(68,224,180,.12); }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 24px; }
article { padding: 26px; border: 1px solid #dfe7f1; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(26, 47, 78, .06); }
h2 { margin: 0 0 10px; font-size: 20px; }
article p { margin: 0; color: #5b6c84; line-height: 1.7; }
@media (max-width: 680px) { .shell { padding: 32px 0; } .hero { padding: 28px; } .grid { grid-template-columns: 1fr; } }

.public-body { color: #13223a; background: #f7f9fc; }
.public-shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.public-header { display: flex; min-height: 76px; align-items: center; justify-content: space-between; gap: 28px; border-bottom: 1px solid #dce5ef; }
.public-brand { display: flex; align-items: center; gap: 11px; color: #13223a; text-decoration: none; }
.public-brand span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; color: #fff; background: #123d6b; font-size: 13px; font-weight: 800; }
.public-header nav, .public-footer nav { display: flex; gap: 24px; }
.public-header nav a, .public-footer a { color: #50647e; font-weight: 650; text-decoration: none; }
.public-header nav a:hover, .public-footer a:hover { color: #087d75; }
.public-hero, .product-detail-hero { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr); gap: 54px; align-items: center; padding: 84px 0 68px; }
.public-kicker { margin: 0 0 12px; color: #087d75; font-size: 13px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.public-hero h1, .public-page-hero h1, .product-detail-hero h1 { max-width: 820px; color: #102957; font-size: clamp(42px, 6vw, 72px); }
.public-hero > div > p:not(.public-kicker), .product-detail-hero > div > p:not(.public-kicker), .public-page-hero > p:not(.public-kicker) { max-width: 740px; color: #596d86; font-size: 18px; line-height: 1.8; }
.public-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.public-primary, .public-secondary { display: inline-flex; align-items: center; justify-content: center; padding: 12px 18px; border-radius: 10px; font-weight: 750; text-decoration: none; }
.public-primary { color: #fff !important; background: #123d6b; }
.public-secondary { border: 1px solid #b9c8d9; color: #173b65; background: #fff; }
.public-hero-panel { display: grid; grid-template-columns: 42px 1fr; gap: 7px 15px; padding: 28px; border: 1px solid #cfe1e6; border-radius: 22px; background: linear-gradient(145deg, #effaf8, #f5f8fc); box-shadow: 0 20px 50px rgba(25,55,88,.08); }
.public-hero-panel span { grid-row: span 2; display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; color: #087d75; background: #d8f3ee; font-weight: 800; }
.public-hero-panel strong { color: #173b65; }.public-hero-panel p { margin: 0 0 18px; color: #65788e; line-height: 1.65; }
.public-section { padding: 58px 0; }.public-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }.public-section-head h2 { color: #102957; font-size: 30px; }.public-section-head a { color: #087d75; font-weight: 750; text-decoration: none; }
.public-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }.public-catalog-grid { padding: 48px 0 76px; }
.public-product-card, .public-offer-card { display: flex; min-height: 320px; flex-direction: column; padding: 28px; border: 1px solid #dce5ef; border-radius: 18px; background: #fff; box-shadow: 0 12px 35px rgba(26,47,78,.06); }
.product-mark { align-self: flex-start; padding: 7px 10px; border-radius: 8px; color: #087d75; background: #e4f7f3; font-size: 12px; font-weight: 800; }.product-version { color: #789; font-size: 13px; }.public-product-card h2, .public-product-card h3 { color: #173b65; }.public-product-card > p:not(.product-version) { color: #64758a; line-height: 1.7; }.public-product-card > a { margin-top: auto; color: #145da5; font-weight: 750; text-decoration: none; }
.product-price { display: grid; gap: 4px; margin: 20px 0; }.product-price strong { color: #102957; font-size: 30px; }.product-price span { color: #6d7f93; font-size: 13px; }
.public-trust-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; padding: 28px 0 64px; }.public-trust-grid article { padding: 24px; }.public-trust-grid strong { color: #173b65; font-size: 18px; }.public-trust-grid p { margin: 9px 0 0; color: #64758a; line-height: 1.7; }
.public-page-hero { padding: 72px 0 30px; }.public-page-hero h1 { font-size: clamp(40px, 5vw, 64px); }
.product-screenshot { overflow: hidden; margin: 0; border: 1px solid #cedae7; border-radius: 18px; background: #fff; box-shadow: 0 22px 55px rgba(18,61,107,.15); }.product-screenshot img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: top left; }.product-screenshot figcaption { padding: 12px 15px; color: #65788e; font-size: 12px; }.product-screenshot-fallback { display: none; min-height: 260px; align-content: center; justify-items: center; gap: 10px; color: #173b65; background: linear-gradient(145deg, #e9f6f4, #edf3fa); }.product-screenshot-fallback span { display: grid; width: 58px; height: 58px; place-items: center; border-radius: 17px; color: #fff; background: #123d6b; font-weight: 850; }.product-screenshot-fallback strong { font-size: 24px; }.product-screenshot-fallback small { color: #65788e; }.product-screenshot.image-unavailable .product-screenshot-fallback { display: grid; }
.product-feature-section { border-top: 1px solid #e0e7ef; }.public-offer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }.public-offer-card { min-height: 0; }.public-offer-card > p { color: #61748a; line-height: 1.7; }.offer-price strong { color: #102957; font-size: 44px; }.public-offer-card dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 20px 0; border-block: 1px solid #e2e8f0; }.public-offer-card dl div { padding: 14px 8px; }.public-offer-card dt { color: #7b8b9d; font-size: 11px; }.public-offer-card dd { margin: 5px 0 0; color: #253f61; font-weight: 750; }.public-offer-card .public-primary { align-self: flex-start; margin-top: auto; }.public-fineprint { color: #708197; font-size: 13px; }
.public-link-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }.public-link-list a { display: grid; gap: 5px; padding: 20px; border: 1px solid #dce5ef; border-radius: 13px; color: #173b65; background: #fff; text-decoration: none; }.public-link-list span { color: #708197; }
.public-document { max-width: 840px; margin-bottom: 70px; padding: 38px; border: 1px solid #dce5ef; border-radius: 18px; background: #fff; }.public-document h2 { margin-top: 32px; color: #173b65; }.public-document h2:first-child { margin-top: 0; }.public-document p, .public-document li { color: #566b83; line-height: 1.85; }.public-empty { padding: 26px; border: 1px dashed #b9c8d9; border-radius: 14px; color: #708197; background: #fff; }
.public-footer { display: flex; min-height: 94px; align-items: center; justify-content: space-between; gap: 24px; border-top: 1px solid #dce5ef; color: #708197; font-size: 13px; }
@media (max-width: 860px) { .public-hero, .product-detail-hero { grid-template-columns: 1fr; gap: 28px; padding-top: 48px; }.public-product-grid, .public-trust-grid { grid-template-columns: 1fr; }.public-offer-grid { grid-template-columns: 1fr; } }
@media (max-width: 620px) { .public-shell { width: min(100% - 26px, 1180px); }.public-header { align-items: flex-start; flex-direction: column; padding: 16px 0; }.public-header nav { width: 100%; gap: 0; justify-content: space-between; }.public-header nav a { font-size: 13px; }.public-hero h1, .public-page-hero h1, .product-detail-hero h1 { font-size: 40px; }.public-link-list { grid-template-columns: 1fr; }.public-offer-card dl { grid-template-columns: 1fr; }.public-offer-card dl div + div { border-top: 1px solid #e2e8f0; }.public-document { padding: 24px; }.public-footer { align-items: flex-start; flex-direction: column; padding: 24px 0; }.public-footer nav { flex-wrap: wrap; gap: 14px; } }

.admin-body { background: #eef3f9; }
.login-shell { min-height: 100vh; display: grid; place-items: center; padding: 28px; }
.login-card { width: min(460px, 100%); padding: 38px; border: 1px solid #d9e3ef; border-radius: 20px; background: #fff; box-shadow: 0 24px 60px rgba(16, 37, 83, .13); }
.eyebrow.dark { color: #087d75; }
.login-title { color: #14213d; font-size: 34px; }
.muted { color: #64748b; line-height: 1.7; }
.alert { margin: 18px 0; padding: 12px 14px; border: 1px solid #fecaca; border-radius: 10px; color: #991b1b; background: #fef2f2; }
.form-stack { display: grid; gap: 17px; margin-top: 24px; }
.form-stack label, .product-switcher { display: grid; gap: 7px; color: #253858; font-size: 14px; font-weight: 700; }
input, select, textarea { width: 100%; padding: 12px 13px; border: 1px solid #cbd7e6; border-radius: 10px; color: #14213d; background: #fff; font: inherit; }
input:focus, select:focus, textarea:focus { outline: 3px solid rgba(20, 93, 165, .16); border-color: #145da5; }
.primary-button { padding: 13px 18px; border: 0; border-radius: 10px; color: #fff; background: #16366d; font: inherit; font-weight: 700; cursor: pointer; }
.primary-button:hover { background: #102a58; }
.security-note { margin: 20px 0 0; color: #7b8799; font-size: 13px; }
.admin-layout { min-height: 100vh; }
.admin-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 30; display: flex; width: 286px; flex-direction: column; color: #e8f0fb; background: #102957; box-shadow: 8px 0 24px rgba(16, 37, 83, .1); font-family: "Microsoft YaHei UI", "Microsoft YaHei", "Segoe UI", sans-serif; }
.sidebar-header { padding: 23px 20px 18px; border-bottom: 1px solid rgba(255,255,255,.13); }
.sidebar-brand { display: flex; align-items: center; gap: 11px; color: #fff; text-decoration: none; }
.sidebar-brand > span:last-child { display: grid; min-width: 0; gap: 2px; }
.sidebar-brand strong { font-size: 17px; font-weight: 700; }
.sidebar-brand small { overflow: hidden; color: #b8c8dc; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.sidebar-logo { display: grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 11px; color: #102553; background: #86eee0; font-size: 13px; font-weight: 800; }
.environment-badge { display: inline-flex; margin: 13px 0 0 49px; padding: 5px 9px; border: 1px solid rgba(134,238,224,.16); border-radius: 999px; color: #c9faf3; background: rgba(255,255,255,.1); font-size: 12px; font-weight: 600; }
.admin-nav { flex: 1; overflow-y: auto; padding: 14px 12px 22px; }
.nav-group { display: grid; gap: 5px; margin-top: 14px; }
.nav-group:first-child { margin-top: 0; }
.nav-group-label { padding: 6px 11px; color: #afc2da; font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.nav-item { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; align-items: center; gap: 9px; min-height: 45px; padding: 7px 10px; border-radius: 10px; color: #e5edf8; font-size: 14px; font-weight: 600; text-decoration: none; transition: background .15s ease, color .15s ease; }
a.nav-item:hover { color: #fff; background: rgba(255,255,255,.11); }
.nav-item.active { color: #fff; background: #28528a; box-shadow: inset 4px 0 #62e1cf; }
.nav-item small { color: #aebed2; font-size: 11px; font-weight: 600; white-space: nowrap; }
.nav-item.active small { color: #d5e7f8; }
.nav-item.disabled { cursor: default; color: #c7d4e5; }
.nav-item.disabled small { color: #9fb1c8; }
.nav-icon { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 8px; color: #cdf9f2; background: rgba(134,238,224,.13); font-size: 12px; font-weight: 800; }
.product-scope-panel { margin: 18px 1px 0; padding: 11px 8px 10px 10px; border: 1px solid rgba(102,226,207,.28); border-radius: 15px; background: linear-gradient(180deg, rgba(28,68,119,.88), rgba(18,50,94,.96)); box-shadow: inset 3px 0 #62e1cf, inset 0 1px rgba(255,255,255,.05), 0 10px 24px rgba(3,18,47,.14); }
.product-scope-heading { display: grid; gap: 3px; padding: 2px 7px 11px; }
.product-scope-heading strong { display: flex; align-items: center; gap: 7px; color: #f1fffd; font-size: 14px; font-weight: 800; }
.product-scope-heading strong::before { width: 8px; height: 8px; border-radius: 50%; background: #62e1cf; box-shadow: 0 0 0 4px rgba(98,225,207,.12); content: ""; }
.product-scope-heading span { color: #b9cadf; font-size: 11px; font-weight: 600; }
.nav-product-picker { display: grid; gap: 7px; margin: 0 0 8px; padding: 11px; border: 1px solid rgba(255,255,255,.17); border-radius: 11px; background: rgba(7,29,65,.34); }
.nav-product-picker > label { color: #d2dfef; font-size: 12px; font-weight: 700; }
.nav-product-picker-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px; }
.nav-product-picker select { min-width: 0; padding: 9px 10px; border-color: rgba(255,255,255,.23); border-radius: 8px; color: #fff; background: #173866; font-size: 13px; font-weight: 600; }
.nav-product-picker option { color: #14213d; background: #fff; }
.nav-product-picker button { padding: 9px 11px; border: 1px solid rgba(134,238,224,.38); border-radius: 8px; color: #d0faf4; background: rgba(134,238,224,.11); font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
.nav-product-picker button:hover { color: #fff; background: rgba(134,238,224,.2); }
.nav-product-picker > small { overflow: hidden; color: #b7c7da; font-size: 11px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.nav-empty-product { margin: 0; padding: 12px; border: 1px solid rgba(255,255,255,.12); border-radius: 10px; color: #cfdaea; background: rgba(7,29,65,.28); font-size: 13px; line-height: 1.5; }
.product-scope-section { margin-top: 0; padding-top: 7px; border-top: 1px solid rgba(255,255,255,.09); }
.product-scope-section + .product-scope-section { margin-top: 6px; }
.product-scope-section .nav-group-label { color: #bad0e1; }
.sidebar-footer { padding: 16px 18px 18px; border-top: 1px solid rgba(255,255,255,.1); }
.admin-profile { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.admin-profile > span:last-child { display: grid; min-width: 0; gap: 2px; }
.admin-profile strong { overflow: hidden; color: #fff; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.admin-profile small { color: #8fa4c0; font-size: 11px; }
.profile-avatar { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; overflow: hidden; border-radius: 50%; color: #16366d; background: #d9f8f2; font-size: 13px; font-weight: 800; }
.sidebar-logout { width: 100%; padding: 9px 12px; border: 1px solid rgba(255,255,255,.2); border-radius: 8px; color: #dce7f5; background: transparent; font: inherit; font-size: 12px; cursor: pointer; }
.sidebar-logout:hover { color: #fff; background: rgba(255,255,255,.08); }
.admin-main { min-width: 0; margin-left: 286px; }
.admin-pagebar { position: sticky; top: 0; z-index: 20; display: flex; align-items: center; justify-content: space-between; min-height: 66px; padding: 10px 28px; border-bottom: 1px solid #dce5f0; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); }
.admin-pagebar > div { display: grid; gap: 3px; }
.admin-pagebar > div span { color: #7b8799; font-size: 11px; }
.admin-pagebar > div strong { color: #14213d; font-size: 16px; }
.pagebar-note { padding: 6px 10px; border-radius: 999px; color: #087d75; background: #e3f8f4; font-size: 11px; font-weight: 700; }
.pagebar-links { display: flex; gap: 6px; }
.pagebar-links a { padding: 7px 10px; border-radius: 8px; color: #52647b; font-size: 12px; text-decoration: none; }
.pagebar-links a:hover { color: #16366d; background: #eef3f9; }
.admin-content { width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding: 28px 0 64px; }
.admin-welcome { display: flex; align-items: end; justify-content: space-between; gap: 30px; padding: 30px; border: 1px solid #dce5f0; border-radius: 18px; background: #fff; }
.admin-welcome h1 { color: #14213d; font-size: 32px; }
.product-switcher { width: min(340px, 100%); }
.admin-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 20px; }
.admin-grid article { position: relative; }
.badge { display: inline-block; margin-top: 18px; padding: 5px 9px; border-radius: 999px; color: #6b7280; background: #eef2f7; font-size: 12px; font-weight: 700; }
.badge.success { color: #087d75; background: #e3f8f4; }
.product-link { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 13px; border: 1px solid #cbd7e6; border-radius: 10px; color: #16366d; background: #f8fafc; text-decoration: none; }
.product-link:hover { border-color: #9eb3cc; background: #fff; }
.product-link small { color: #64748b; font-size: 11px; font-weight: 500; }
.product-admin { width: min(1260px, calc(100% - 48px)); }
.product-heading { align-items: center; }
.heading-actions, .form-actions { display: flex; align-items: center; gap: 10px; }
.secondary-button, .danger-button { display: inline-block; padding: 11px 14px; border: 1px solid #b8c7da; border-radius: 10px; color: #16366d; background: #fff; font: inherit; font-weight: 700; text-decoration: none; cursor: pointer; }
.danger-button { border-color: #fecaca; color: #b91c1c; }
.success-alert { border-color: #99e5d8; color: #07645f; background: #ecfdf9; }
.form-error-summary { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.form-error-summary a { margin-left: auto; color: #7f1d1d; font-weight: 800; }
.module-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.module-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; color: #087d75; background: #e3f8f4; font-size: 13px; font-weight: 800; }
.module-heading .badge { margin-top: 0; }
.config-section { scroll-margin-top: 84px; margin-top: 20px; padding: 26px; border: 1px solid #dce5f0; border-radius: 18px; background: #fff; }
.section-heading { display: flex; align-items: start; justify-content: space-between; gap: 20px; margin-bottom: 18px; }
.section-heading p { margin: 0; color: #64748b; }
.section-heading h2 { margin-bottom: 7px; }
.section-kicker { margin-bottom: 5px !important; color: #087d75 !important; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.count-badge { white-space: nowrap; padding: 6px 10px; border-radius: 999px; color: #087d75; background: #e3f8f4; font-size: 12px; font-weight: 700; }
.editor-card { position: relative; margin-top: 12px; border: 1px solid #dce5f0; border-radius: 13px; background: #f9fbfd; }
.editor-card summary { display: flex; justify-content: space-between; gap: 16px; padding: 16px 18px; cursor: pointer; }
.editor-card summary span { color: #64748b; font-size: 13px; }
.editor-card[open] summary { border-bottom: 1px solid #dce5f0; }
.config-form { padding: 20px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.form-grid label { display: grid; gap: 6px; color: #253858; font-size: 13px; font-weight: 700; }
.form-grid .span-2 { grid-column: span 2; }
.check-label { display: flex; align-items: center; gap: 8px; margin: 17px 0; font-weight: 700; }
.check-label input { width: auto; }
.delete-form { position: absolute; right: 20px; bottom: 20px; }
.empty-state { padding: 18px; border-radius: 10px; color: #64748b; background: #f8fafc; }
.add-card { border-style: dashed; }
.module-link { display: block; margin-top: 16px; color: #145da5; font-size: 13px; font-weight: 700; text-decoration: none; }
.compact-button { padding: 8px 11px; font-size: 12px; }
.feedback-heading { align-items: center; }
.feedback-summary { display: grid; width: min(460px, 100%); grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid #dce5f0; border-radius: 14px; background: #f8fafc; }
.feedback-summary div { display: grid; gap: 3px; padding: 15px 12px; text-align: center; }
.feedback-summary div + div { border-left: 1px solid #dce5f0; }
.feedback-summary strong { color: #16366d; font-size: 23px; }
.feedback-summary span { color: #64748b; font-size: 11px; }
.feedback-panel { margin-top: 20px; padding: 24px; border: 1px solid #dce5f0; border-radius: 18px; background: #fff; }
.feedback-filters { display: grid; grid-template-columns: 170px 170px minmax(220px, 1fr) auto auto; align-items: end; gap: 12px; padding-bottom: 20px; border-bottom: 1px solid #e3eaf3; }
.feedback-filters label, .feedback-update label { display: grid; gap: 6px; color: #253858; font-size: 12px; font-weight: 700; }
.feedback-filters .primary-button, .feedback-filters .secondary-button { min-height: 43px; }
.feedback-list { display: grid; gap: 12px; margin-top: 18px; }
.feedback-card { overflow: hidden; border: 1px solid #dce5f0; border-radius: 14px; background: #fbfcfe; }
.feedback-card > summary { display: grid; grid-template-columns: 78px minmax(0, 1fr) 100px; align-items: center; gap: 14px; padding: 17px 18px; cursor: pointer; }
.feedback-card[open] > summary { border-bottom: 1px solid #dce5f0; background: #fff; }
.feedback-summary-main { display: grid; min-width: 0; gap: 5px; }
.feedback-summary-main strong { overflow: hidden; color: #1c2f4e; text-overflow: ellipsis; white-space: nowrap; }
.feedback-summary-main small, .feedback-source small { color: #718096; font-size: 11px; }
.feedback-source { display: grid; gap: 4px; color: #52647b; font-size: 12px; text-align: right; }
.feedback-status { padding: 6px 8px; border-radius: 999px; font-size: 11px; font-weight: 800; text-align: center; }
.status-new { color: #9a5800; background: #fff3d6; }.status-processing { color: #145da5; background: #e7f1fb; }.status-replied { color: #6551a5; background: #f0edff; }.status-resolved { color: #087d75; background: #e3f8f4; }.status-spam { color: #7b8799; background: #edf1f5; }
.feedback-detail { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(260px, .8fr); gap: 22px; padding: 20px; background: #fff; }
.feedback-detail h3 { margin: 0 0 11px; color: #253858; font-size: 13px; }
.feedback-content { min-height: 110px; padding: 15px; border-radius: 10px; color: #344861; background: #f6f8fb; line-height: 1.75; white-space: pre-wrap; overflow-wrap: anywhere; }
.feedback-detail dl { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 8px 10px; margin: 0; font-size: 12px; }
.feedback-detail dt { color: #7b8799; }.feedback-detail dd { min-width: 0; margin: 0; color: #344861; overflow-wrap: anywhere; }
.diagnostic-box { margin-top: 14px; color: #52647b; font-size: 12px; }.diagnostic-box summary { cursor: pointer; font-weight: 700; }.diagnostic-box pre { overflow: auto; max-height: 180px; padding: 10px; border-radius: 8px; background: #f6f8fb; white-space: pre-wrap; }
.feedback-update { display: grid; grid-template-columns: 180px minmax(0, 1fr) auto; align-items: end; gap: 14px; padding: 18px 20px 20px; border-top: 1px solid #e3eaf3; background: #f7f9fc; }
.feedback-empty { display: grid; gap: 5px; text-align: center; }.feedback-empty span { font-size: 13px; }
.product-center-heading { align-items: center; }
.foundation-note { display: grid; min-width: 300px; gap: 5px; padding: 16px 18px; border: 1px solid #cce8e3; border-radius: 13px; color: #35536b; background: #f0fbf8; }
.foundation-note strong { color: #087d75; font-size: 13px; }.foundation-note span { font-weight: 800; }.foundation-note small { color: #64748b; }
.product-center-list { display: grid; gap: 12px; }
.product-settings-card { margin-top: 0; }
.product-settings-card > summary { align-items: center; list-style: none; }
.product-settings-card > summary::-webkit-details-marker { display: none; }
.product-card-title { display: grid; gap: 5px; }
.product-card-title strong { color: #1c2f4e; font-size: 18px; }
.product-card-title small { color: #52647b; font-size: 14px; font-weight: 500; }
.product-summary-meta { display: flex; align-items: center; gap: 12px; }
.product-state { align-self: center; padding: 5px 9px; border-radius: 999px; font-size: 11px; font-weight: 800; }
.product-settings-card .product-state { font-size: 14px; }
.product-expand-hint { display: inline-flex; min-width: 90px; align-items: center; justify-content: center; gap: 8px; padding: 8px 12px; border: 1px solid #b8c7da; border-radius: 9px; color: #173a70 !important; background: #fff; font-size: 14px !important; font-weight: 800; }
.product-expand-hint b { width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .18s ease; }
.product-expand-hint .when-open { display: none; }
.product-settings-card[open] .product-expand-hint { color: #fff !important; background: #173a70; }
.product-settings-card[open] .product-expand-hint .when-closed { display: none; }
.product-settings-card[open] .product-expand-hint .when-open { display: inline; }
.product-settings-card[open] .product-expand-hint b { transform: translateY(3px) rotate(225deg); }
.state-active { color: #087d75; background: #e3f8f4; }.state-draft { color: #9a5800; background: #fff3d6; }.state-archived { color: #7b8799; background: #edf1f5; }
.form-grid label small { color: #7b8799; font-size: 11px; font-weight: 500; line-height: 1.5; }
.product-form-rules { display: grid; grid-template-columns: minmax(210px, .55fr) minmax(0, 1.45fr); gap: 22px; margin: 18px 20px 0; border: 1px solid #bfd7e8; border-radius: 10px; background: #f4f9fc; padding: 16px 18px; color: #314760; }
.product-form-rules > div { display: grid; align-content: start; gap: 5px; }
.product-form-rules strong { color: #102a56; font-size: 15px; }
.product-form-rules span { color: #61758d; font-size: 12px; line-height: 1.6; }
.product-form-rules ul { display: grid; gap: 7px; margin: 0; padding-left: 20px; font-size: 12px; line-height: 1.65; }
.product-form-rules b { color: #173a70; }
.product-form-rules code { border-radius: 4px; background: #e6f0f7; padding: 1px 4px; color: #173a70; }
.config-form-rules { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 18px; margin-bottom: 18px; border: 1px solid #bfd7e8; border-radius: 10px; background: #f4f9fc; padding: 15px 17px; color: #314760; }
.config-form-rules > strong { color: #102a56; font-size: 14px; }
.config-form-rules ul { display: grid; gap: 6px; margin: 0; padding-left: 19px; font-size: 12px; line-height: 1.6; }
.config-form-rules b { color: #173a70; }
.config-form-rules code { border-radius: 4px; background: #e6f0f7; padding: 1px 4px; color: #173a70; }
.config-list-toolbar { position: sticky; top: 68px; z-index: 12; display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 20px; border: 1px solid #cbd9e8; border-radius: 14px; background: rgba(255,255,255,.96); box-shadow: 0 10px 24px rgba(16,37,83,.08); padding: 13px 15px; backdrop-filter: blur(8px); }
.config-list-create-actions, .config-list-main-actions { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.config-list-main-actions form { margin: 0; }
.config-list-main-actions .primary-button, .config-list-main-actions .secondary-button, .config-list-main-actions .danger-button,
.config-list-create-actions .primary-button, .config-list-create-actions .secondary-button { min-height: 42px; padding: 10px 15px; }
.config-list-main-actions button:disabled { cursor: not-allowed; opacity: .45; }
.config-list-card { overflow: visible; background: #fff; }
.config-list-card > summary { display: grid; grid-template-columns: 24px minmax(240px, 1fr) minmax(160px, auto) 52px; align-items: center; gap: 13px; min-height: 66px; }
.config-row-select { display: grid; place-items: center; }
.config-row-select input { width: 17px; height: 17px; margin: 0; accent-color: #145da5; }
.config-row-primary { display: grid; min-width: 0; gap: 4px; }
.config-row-primary strong, .config-row-primary small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.config-row-primary strong { color: #1c2f4e; font-size: 14px; }
.config-row-primary small { color: #718096; font-size: 11px; font-weight: 500; }
.config-row-meta { color: #52647b !important; font-size: 11px !important; text-align: right; }
.config-row-edit { border: 1px solid #b8c7da; border-radius: 8px; padding: 6px 8px; color: #16366d !important; background: #fff; font-size: 11px !important; font-weight: 800; text-align: center; }
.config-list-card[open] .config-row-edit { color: #fff !important; background: #16366d; }
.config-create-card { scroll-margin-top: 138px; border: 1px dashed #7fa4c7; background: #f7fbff; }
.preview-list { display: grid; gap: 10px; }
.preview-list article { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 13px; border: 1px solid #dce5f0; border-radius: 12px; background: #fbfcfe; padding: 15px; }
.preview-list article > div { display: grid; min-width: 0; gap: 5px; }
.preview-list strong { color: #1c2f4e; }
.preview-list small { color: #718096; }
.preview-list a { overflow-wrap: anywhere; color: #145da5; font-size: 12px; }
.preview-list p { margin: 2px 0 0; color: #52647b; white-space: pre-wrap; }
.link-preview-icon { background-color: #f4f8fc; background-image: url("/static/icons/link.svg"); background-position: center; background-repeat: no-repeat; background-size: 24px 24px; }
.link-preview-icon[data-link-icon="website"] { background-image: url("/static/icons/website.svg"); }
.link-preview-icon[data-link-icon="download"] { background-image: url("/static/icons/download.svg"); }
.link-preview-icon[data-link-icon="shop"],
.link-preview-icon[data-link-icon="purchase"] { background-image: url("/static/icons/shop.svg"); }
.link-preview-icon[data-link-icon="taobao"] { background-image: url("/static/icons/taobao.svg"); }
.link-preview-icon[data-link-icon="gitee"] { background-image: url("/static/icons/gitee.svg"); }
.link-preview-icon[data-link-icon="xianyu"] { background-image: url("/static/icons/xianyu.svg"); }
.link-preview-icon[data-link-icon="xiaohongshu"] { background-image: url("/static/icons/xiaohongshu.svg"); }
.link-preview-icon[data-link-icon="douyin"] { background-image: url("/static/icons/douyin.svg"); }
.link-preview-icon[data-link-icon="qq"] { background-image: url("/static/icons/qq.svg"); }
.link-preview-icon[data-link-icon="email"] { background-image: url("/static/icons/email.svg"); }
.link-preview-icon[data-link-icon="support"] { background-image: url("/static/icons/support.svg"); }
.product-form-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 18px; }
.create-product-section { border-style: dashed; }
.archive-confirm { display: flex; align-items: center; gap: 8px; margin: 17px 0 0; color: #7a4a00; font-size: 12px; font-weight: 700; }.archive-confirm input { width: auto; }
.archive-note { margin: 16px 0 0; padding: 10px 12px; border-radius: 9px; color: #52647b; background: #edf1f5; font-size: 12px; }
.archive-alert { border-color: #f3d28b; color: #7a4a00; background: #fff8e8; }
.analytics-heading { align-items: center; }
.analytics-definition { display: grid; min-width: 310px; gap: 5px; padding: 16px 18px; border: 1px solid #cce8e3; border-radius: 13px; color: #35536b; background: #f0fbf8; }.analytics-definition strong { color: #087d75; font-size: 13px; }.analytics-definition span { font-weight: 800; }.analytics-definition small { color: #64748b; }
.metric-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(165px, 1fr)); gap: 13px; margin-top: 20px; }.metric-grid article { display: grid; gap: 6px; padding: 20px; }.metric-grid article > span { color: #52647b; font-size: 12px; font-weight: 700; }.metric-grid article > strong { color: #16366d; font-size: 31px; }.metric-grid article > small { color: #8995a6; font-size: 10px; }
.analytics-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, .7fr); gap: 20px; }.analytics-section { min-width: 0; }
.analytics-version-heading { align-items: end; gap: 18px; }
.analytics-version-filter { display: flex; align-items: end; gap: 8px; margin: 0; flex-wrap: wrap; }.analytics-version-filter label { display: grid; gap: 5px; color: #52647b; font-size: 12px; font-weight: 700; }.analytics-version-filter select { min-width: 155px; height: 38px; padding: 0 34px 0 11px; }.analytics-version-filter button { min-height: 38px; padding: 0 14px; }.analytics-version-filter a { align-self: center; color: #145da5; font-size: 12px; font-weight: 700; text-decoration: none; }
.version-list { display: grid; gap: 14px; }.version-row { display: grid; grid-template-columns: 210px minmax(0, 1fr) 44px; align-items: center; gap: 13px; }.version-row > span { display: grid; gap: 4px; }.version-name { display: flex; align-items: center; gap: 8px; }.version-status { padding: 3px 7px; border-radius: 999px; font-size: 11px; font-style: normal; font-weight: 800; }.version-status.current { color: #087d75; background: #e5f7f3; }.version-status.outdated { color: #8a5a12; background: #fff3d8; }.version-row small { color: #7b8799; font-size: 10px; }.version-row progress { width: 100%; height: 9px; overflow: hidden; border: 0; border-radius: 999px; background: #e7edf4; accent-color: #168f87; }.version-row progress::-webkit-progress-bar { border-radius: 999px; background: #e7edf4; }.version-row progress::-webkit-progress-value { border-radius: 999px; background: linear-gradient(90deg, #1d5799, #16a394); }.version-row b { color: #52647b; font-size: 12px; text-align: right; }
.privacy-card ul { display: grid; gap: 10px; margin: 0; padding-left: 20px; color: #52647b; font-size: 13px; line-height: 1.5; }
.stats-table-wrap { overflow-x: auto; }.stats-table { width: 100%; border-collapse: collapse; font-size: 12px; }.stats-table th, .stats-table td { padding: 11px 12px; border-bottom: 1px solid #e3eaf3; text-align: right; white-space: nowrap; }.stats-table th:first-child, .stats-table td:first-child { text-align: left; }.stats-table th { color: #52647b; background: #f6f8fb; }.empty-cell { color: #7b8799; text-align: center !important; }
.management-panel { overflow: hidden; margin-top: 20px; border: 1px solid #d6e0ec; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(19,42,82,.06); }
.management-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border-bottom: 1px solid #e1e8f1; }
.management-toolbar > div { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.management-toolbar form { margin: 0; }
.management-toolbar button:disabled { cursor: not-allowed; opacity: .45; }
.management-rules { border-bottom: 1px solid #e1e8f1; padding: 11px 18px; color: #52647b; background: #f8fafc; font-size: 12px; }
.management-rules summary { cursor: pointer; color: #173a70; font-weight: 800; }
.management-rules p { max-width: 1050px; margin: 9px 0 2px; line-height: 1.7; }
.management-table-wrap { overflow-x: auto; }
.management-table { width: 100%; min-width: 1120px; border-collapse: collapse; color: #344861; font-size: 12px; }
.notice-management-table { min-width: 1320px; }
.order-management-table { min-width: 1540px; }
.device-management-table { min-width: 1240px; }
.license-management-table { min-width: 1540px; }
.management-table th { padding: 12px 14px; color: #52647b; background: #f4f7fb; font-size: 11px; text-align: left; white-space: nowrap; }
.management-table td { padding: 13px 14px; border-top: 1px solid #e5ebf3; vertical-align: middle; }
.management-table tbody tr:hover { background: #fbfdff; }
.management-table td > strong, .management-table td > span, .management-table td > small { display: block; }
.management-table td > strong { color: #1c2f4e; font-size: 13px; }
.management-table td > small { margin-top: 4px; color: #7b8799; font-size: 10px; }
.management-table .select-column { width: 28px; }
.management-table .actions-column { width: 150px; }
.management-table input[data-config-selection] { width: 17px; height: 17px; accent-color: #145da5; }
.table-url { display: block; overflow: hidden; max-width: 300px; margin-top: 5px; color: #145da5; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.table-summary { display: -webkit-box !important; overflow: hidden; max-width: 320px; margin-top: 5px; color: #718096; font-size: 10px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.table-badge, .state-pill { display: inline-flex !important; width: fit-content; border-radius: 999px; padding: 5px 8px; color: #52647b; background: #edf1f5; font-size: 10px; font-weight: 800; }
.state-pill.is-published { color: #087d75; background: #e3f8f4; }
.row-actions { display: flex; align-items: center; gap: 7px; white-space: nowrap; }
.row-actions form { margin: 0; }
.inline-toggle-form { margin: 0; }
.inline-toggle-form[aria-busy="true"] { opacity: .55; pointer-events: none; }
.switch-control { display: inline-flex; align-items: center; gap: 7px; cursor: pointer; color: #52647b; }
.switch-control input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.switch-control > span { position: relative; width: 32px; height: 18px; border-radius: 999px; background: #b9c4d2; transition: background .18s ease; }
.switch-control > span::after { position: absolute; top: 3px; left: 3px; width: 12px; height: 12px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.18); content: ""; transition: transform .18s ease; }
.switch-control input:checked + span { background: #168f87; }
.switch-control input:checked + span::after { transform: translateX(14px); }
.switch-control input:focus-visible + span { outline: 3px solid rgba(20,93,165,.2); outline-offset: 2px; }
.switch-control b { font-size: 11px; }
.config-modal[hidden] { display: none; }
.config-modal { position: fixed; z-index: 100; inset: 0; display: grid; place-items: center; padding: 24px; }
.config-modal-backdrop { position: absolute; inset: 0; width: 100%; border: 0; background: rgba(13,27,50,.58); cursor: default; }
.config-modal-panel { position: relative; overflow: hidden; width: min(880px, 100%); max-height: calc(100vh - 48px); border-radius: 16px; background: #fff; box-shadow: 0 24px 80px rgba(5,17,37,.32); }
.config-modal-panel > header { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 19px 22px; border-bottom: 1px solid #e1e8f1; }
.config-modal-panel > header h2 { margin: 3px 0 0; color: #17315b; font-size: 20px; }
.modal-close { width: 34px; height: 34px; border: 0; border-radius: 8px; color: #52647b; background: #edf1f5; cursor: pointer; font-size: 22px; }
.modal-config-form { overflow-y: auto; max-height: calc(100vh - 140px); padding: 21px 22px 22px; }
.modal-form-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; padding-top: 17px; border-top: 1px solid #e1e8f1; }
.pricing-preview-form .form-actions { margin-top: 20px; padding-top: 18px; border-top: 1px solid #e1e8f1; }
.modal-open { overflow: hidden; }
.checkbox-row { display: flex !important; align-items: flex-start; gap: 10px; border: 1px solid #cce8e3; border-radius: 10px; padding: 12px 14px; background: #f0fbf8; }
.checkbox-row input { width: 17px; height: 17px; margin-top: 2px; accent-color: #168f87; }
.checkbox-row span { display: grid; gap: 3px; }
.checkbox-row strong { color: #174f4b; }
.icon-select-control { display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: center; gap: 8px; }
.icon-select-control > span { display: block; width: 42px; height: 42px; border: 1px solid #cbd9e8; border-radius: 9px; background-color: #f4f8fc; background-image: url("/static/icons/link.svg"); background-position: center; background-repeat: no-repeat; background-size: 25px 25px; }
.icon-select-control [data-icon-preview][data-icon="website"] { background-image: url("/static/icons/website.svg"); }
.icon-select-control [data-icon-preview][data-icon="download"] { background-image: url("/static/icons/download.svg"); }
.icon-select-control [data-icon-preview][data-icon="shop"] { background-image: url("/static/icons/shop.svg"); }
.icon-select-control [data-icon-preview][data-icon="taobao"] { background-image: url("/static/icons/taobao.svg"); }
.icon-select-control [data-icon-preview][data-icon="gitee"] { background-image: url("/static/icons/gitee.svg"); }
.icon-select-control [data-icon-preview][data-icon="xianyu"] { background-image: url("/static/icons/xianyu.svg"); }
.icon-select-control [data-icon-preview][data-icon="xiaohongshu"] { background-image: url("/static/icons/xiaohongshu.svg"); }
.icon-select-control [data-icon-preview][data-icon="douyin"] { background-image: url("/static/icons/douyin.svg"); }
.icon-select-control [data-icon-preview][data-icon="qq"] { background-image: url("/static/icons/qq.svg"); }
.icon-select-control [data-icon-preview][data-icon="email"] { background-image: url("/static/icons/email.svg"); }
.icon-select-control [data-icon-preview][data-icon="support"] { background-image: url("/static/icons/support.svg"); }
.icon-select-control select { min-width: 0; }
.form-grid label small b { color: #173a70; }

/* 后台右侧工作区：按常规桌面管理系统字号和间距显示。 */
.admin-main { font-size: 17px; }
.admin-content, .product-admin { width: calc(100% - 32px); max-width: none; padding-top: 22px; padding-bottom: 48px; }
.admin-pagebar { padding-inline: 20px; }
.admin-pagebar > div span { font-size: 15px; }
.admin-pagebar > div strong { font-size: 21px; }
.admin-welcome { padding: 26px; }
.admin-welcome h1 { font-size: 34px; }
.admin-welcome p, .admin-main .muted { font-size: 17px; }
.section-heading h2, .config-modal-panel > header h2 { font-size: 24px; }
.section-heading p { font-size: 16px; }
.section-kicker { font-size: 14px; }
.foundation-note strong { font-size: 16px; }
.foundation-note span { font-size: 17px; }
.foundation-note small { font-size: 15px; line-height: 1.6; }
.count-badge, .badge { font-size: 15px; }
.primary-button, .secondary-button, .danger-button { font-size: 16px; }
.compact-button { padding: 10px 14px; font-size: 15px; }
.management-toolbar { padding: 17px 20px; }
.management-rules { padding: 14px 20px; font-size: 16px; }
.management-rules p { max-width: none; font-size: 16px; }
.management-table { min-width: 1280px; font-size: 16px; }
.notice-management-table { min-width: 1520px; }
.management-table th { padding: 15px 16px; font-size: 15px; }
.management-table td { padding: 16px; }
.management-table td > strong { font-size: 16px; }
.management-table td > small { font-size: 14px; line-height: 1.55; }
.table-url { max-width: 420px; font-size: 14px; line-height: 1.55; }
.table-summary { display: block !important; overflow: visible; min-width: 260px; max-width: 520px; margin-top: 0; color: #344861; font-size: 16px; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; -webkit-line-clamp: initial; }
.table-badge, .state-pill { padding: 7px 10px; font-size: 14px; }
.switch-control b { font-size: 15px; }
.form-grid { gap: 18px; }
.form-grid label { gap: 8px; font-size: 16px; }
.form-grid label small { font-size: 15px; line-height: 1.65; }
.modal-config-form { padding: 24px; }
.config-modal-panel { width: min(980px, 100%); }
.preview-list strong { font-size: 17px; }
.preview-list small, .preview-list a, .preview-list p { font-size: 16px; }
.stats-table { font-size: 16px; }
.stats-table th, .stats-table td { padding: 13px 14px; }
.feedback-filters label, .feedback-update label { font-size: 16px; }
.feedback-summary-main small, .feedback-source small { font-size: 14px; }
.feedback-source, .feedback-detail dl, .diagnostic-box { font-size: 16px; }
.feedback-detail h3 { font-size: 17px; }
.metric-grid article > span { font-size: 16px; }
.metric-grid article > small, .version-row small { font-size: 14px; }
.plan-list { margin-top: 18px; }
.plan-form-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.plan-settings-card summary { align-items: center; }
.plan-settings-card .product-card-title small { font-variant-numeric: tabular-nums; }
.plan-archive-note { display: flex; gap: 10px; justify-content: space-between; margin: 18px 20px 20px; }
.plan-updated { color: #64748b; font-size: 14px; }
.state-inactive { color: #475569; background: #e2e8f0; }
.state-pending_payment { color: #8a5a12; background: #fff3d8; }
.state-paid_confirmed, .state-pending_fulfillment { color: #174b80; background: #e5f0fb; }
.state-delivered { color: #087d75; background: #e3f8f4; }
.state-cancelled { color: #64748b; background: #edf1f5; }
.state-refunded { color: #9f3434; background: #fdecec; }
.state-replaced, .state-retired, .state-revoked, .state-expired { color: #64748b; background: #edf1f5; }
@media (max-width: 900px) {
  .admin-sidebar { position: static; width: 100%; min-height: auto; box-shadow: none; }
  .sidebar-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 18px; }
  .environment-badge { margin: 0; }
  .admin-nav { display: flex; gap: 7px; overflow-x: auto; padding: 9px 14px 12px; border-top: 1px solid rgba(255,255,255,.08); }
  .nav-group, .product-scope-panel, .product-scope-section { display: contents; }
  .nav-group-label, .product-scope-heading, .nav-item.disabled, .sidebar-footer { display: none; }
  .nav-product-picker { display: grid; flex: 0 0 238px; gap: 4px; margin: 0; padding: 5px 7px; }
  .nav-product-picker > label, .nav-product-picker > small { display: none; }
  .nav-product-picker-row { grid-template-columns: minmax(126px, 1fr) auto; }
  .nav-product-picker select { padding: 6px 8px; }
  .nav-product-picker button { padding: 6px 8px; }
  .nav-empty-product { display: none; }
  .nav-item { flex: 0 0 auto; min-height: 38px; grid-template-columns: 25px auto auto; padding: 5px 10px; }
  .admin-main { margin-left: 0; }
  .admin-pagebar { position: sticky; padding: 9px 20px; }
  .feedback-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .filter-query { grid-column: span 2; }
  .feedback-update { grid-template-columns: 1fr; }
  .foundation-note { min-width: 0; }
  .metric-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .analytics-layout { grid-template-columns: 1fr; }
  .management-toolbar { align-items: stretch; flex-direction: column; }
  .plan-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .admin-content, .product-admin { width: min(100% - 28px, 1260px); padding-top: 16px; }
  .admin-welcome { align-items: stretch; flex-direction: column; padding: 22px; }
  .admin-grid { grid-template-columns: 1fr; }
  .pagebar-links, .pagebar-note { display: none; }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid .span-2 { grid-column: span 1; }
  .product-form-rules { grid-template-columns: 1fr; margin-inline: 0; }
  .config-form-rules { grid-template-columns: 1fr; }
  .config-list-toolbar { position: static; align-items: stretch; flex-direction: column; }
  .config-list-create-actions, .config-list-main-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .config-list-main-actions > * { width: 100%; }
  .config-list-main-actions button, .config-list-main-actions a, .config-list-create-actions button { width: 100%; text-align: center; }
  .config-list-card > summary { grid-template-columns: 24px minmax(0, 1fr) 48px; }
  .config-row-meta { display: none; }
  .form-error-summary a { width: 100%; margin-left: 0; }
  .heading-actions { align-items: stretch; flex-direction: column; }
  .delete-form { position: static; padding: 0 20px 20px; }
  .editor-card summary { flex-direction: column; }
  .product-summary-meta { width: 100%; justify-content: space-between; }
  .config-section { padding: 20px 16px; }
  .feedback-summary { grid-template-columns: repeat(2, 1fr); }
  .feedback-summary div:nth-child(3) { border-left: 0; border-top: 1px solid #dce5f0; }
  .feedback-summary div:nth-child(4) { border-top: 1px solid #dce5f0; }
  .feedback-panel { padding: 16px; }
  .feedback-filters { grid-template-columns: 1fr; }
  .filter-query { grid-column: auto; }
  .feedback-card > summary { grid-template-columns: 72px minmax(0, 1fr); }
  .feedback-source { display: none; }
  .feedback-detail { grid-template-columns: 1fr; }
  .product-form-footer { align-items: stretch; flex-direction: column; }
  .analytics-definition { min-width: 0; }
  .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .config-modal { padding: 10px; }
  .config-modal-panel { max-height: calc(100vh - 20px); border-radius: 12px; }
  .modal-config-form { max-height: calc(100vh - 110px); padding: 16px; }
  .plan-form-grid { grid-template-columns: 1fr; }
  .management-toolbar > div { display: grid; grid-template-columns: 1fr 1fr; }
  .management-toolbar > div:first-child { grid-template-columns: 1fr auto; }
}
