:root { color-scheme: dark; font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; background: #09111f; color: #e9f1ff; }
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: radial-gradient(circle at 10% 0%, #17345e 0, transparent 34rem), #09111f; }
button, input { font: inherit; }
button { cursor: pointer; border: 0; border-radius: 10px; background: #38bdf8; color: #062033; font-weight: 700; padding: .75rem 1rem; }
button:hover { background: #7dd3fc; }
.shell { max-width: 1180px; margin: 0 auto; padding: 4rem 1.25rem; }
.login-card { max-width: 420px; margin: 8vh auto; padding: 2rem; border: 1px solid #334155; border-radius: 22px; background: rgba(8, 20, 38, .93); box-shadow: 0 24px 60px #0006; }
h1, h2, h3, p { margin-top: 0; } h1 { margin-bottom: .5rem; font-size: clamp(1.9rem, 5vw, 2.8rem); } h2 { margin-bottom: .4rem; font-size: 1.25rem; } h3 { margin-bottom: .25rem; font-size: 1rem; }
.eyebrow { color: #67e8f9; font-size: .73rem; font-weight: 800; letter-spacing: .16em; }.subtle, .product-panel header p, .pack-heading p { color: #a4b5cb; line-height: 1.55; }
.stack { display: grid; gap: 1rem; margin-top: 2rem; } label { display: grid; gap: .45rem; color: #cbd5e1; font-size: .85rem; }
input { width: 100%; border: 1px solid #3b4a61; border-radius: 8px; background: #0b1728; color: #f8fafc; padding: .7rem .75rem; outline: none; } input:focus { border-color: #38bdf8; box-shadow: 0 0 0 3px #38bdf833; }
.topbar { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }.actions { display: flex; gap: .75rem; }.secondary { background: #1e3a5f; color: #e0f2fe; }.link-button { background: transparent; color: #a4b5cb; }
.notice { padding: .8rem 1rem; margin: 1rem 0 1.5rem; border-radius: 10px; background: #1e3a5f; color: #dbeafe; }.notice.error { background: #4c1d2a; color: #fecdd3; }.notice.success { background: #123c35; color: #a7f3d0; }
.overview { display: grid; gap: 1.25rem; margin-bottom: 2.5rem; }.overview > header, .analytics-panel > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }.overview > header p { margin-bottom: 0; color: #a4b5cb; line-height: 1.55; }.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; }.total-metrics { grid-template-columns: repeat(6, minmax(0, 1fr)); }.metric { min-height: 92px; display: flex; flex-direction: column; justify-content: center; gap: .25rem; padding: .9rem; border: 1px solid #29405e; border-radius: 12px; background: #0d1c30; }.metric span, .metric small { color: #9eb2cb; font-size: .75rem; line-height: 1.35; }.metric strong { color: #f8fafc; font-size: 1.18rem; overflow-wrap: anywhere; }.analytics-products { display: grid; gap: 1.25rem; }.analytics-panel { border: 1px solid #334155; border-radius: 18px; background: #0b1728dd; padding: 1.25rem; }.analytics-panel.unavailable { color: #fbbf24; }.analytics-panel h3 { margin: 0 0 .75rem; color: #cbd5e1; font-size: .9rem; }.analytics-detail { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 1.25rem; margin-top: 1.25rem; }.analytics-detail > div, .orders { padding: 1rem; border: 1px solid #29405e; border-radius: 12px; background: #0d1c30; }.rank-list { list-style: none; padding: 0; margin: 0; display: grid; gap: .55rem; }.rank-list li { display: flex; justify-content: space-between; gap: 1rem; color: #b8c7da; font-size: .82rem; }.rank-list strong { color: #e0f2fe; }.trend { height: 130px; display: flex; align-items: end; gap: 4px; padding-top: .5rem; }.trend-bar { flex: 1; height: 100%; min-width: 14px; display: flex; flex-direction: column; justify-content: end; align-items: center; gap: .35rem; }.trend-bar i { display: block; width: 100%; min-height: 3px; border-radius: 4px 4px 0 0; background: linear-gradient(#67e8f9, #2563eb); }.trend-bar span { color: #7790ae; font-size: .62rem; white-space: nowrap; transform: rotate(-45deg); margin-bottom: -.6rem; }.orders { margin-top: 1.25rem; }.table-wrap { overflow-x: auto; } table { width: 100%; min-width: 580px; border-collapse: collapse; font-size: .78rem; color: #cbd5e1; } th, td { padding: .65rem .5rem; border-top: 1px solid #29405e; text-align: left; white-space: nowrap; } th { color: #8ea4bf; font-weight: 600; }.status { display: inline-block; border-radius: 999px; padding: .35rem .65rem; color: #a7f3d0; background: #123c35; font-size: .75rem; white-space: nowrap; }.config-heading { margin: 2rem 0 1rem; }
.products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }.product-panel { border: 1px solid #334155; border-radius: 18px; background: #0b1728dd; padding: 1.25rem; }.pack-list { display: grid; gap: .9rem; margin-top: 1.2rem; }.pack-card { border: 1px solid #2d3d55; border-radius: 12px; padding: 1rem; background: #0d1c30; }.pack-heading { display: flex; justify-content: space-between; gap: .8rem; }.pack-heading p { margin-bottom: 0; font-size: .76rem; }.switch { display: flex; align-items: center; gap: .45rem; white-space: nowrap; }.switch input { width: auto; }.fields { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin: 1rem 0; }.pack-card > .secondary { width: 100%; margin-top: 1rem; }.empty { color: #94a3b8; padding: 2rem 0; text-align: center; }
@media (max-width: 900px) { .metric-grid, .total-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }.analytics-detail { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .shell { padding-top: 2rem; }.topbar, .pack-heading, .overview > header, .analytics-panel > header { align-items: start; flex-direction: column; }.products { grid-template-columns: 1fr; }.fields, .metric-grid, .total-metrics { grid-template-columns: 1fr; } }
