/* * SaaSShop Platform (Public) Styles * 说明:对外平台官网/套餐页的样式集中管理,避免 Blade 中大量 inline style。 */ :root{ --bg:#f6f7fb; --text:#111827; --muted:#6b7280; --border:#e5e7eb; --brand:#111827; --card-bg:#fff; } body{ font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif; margin:0; background:var(--bg); color:var(--text); } .wrap{ max-width:980px; margin:0 auto; padding:24px; } .card{ background:var(--card-bg); border:1px solid var(--border); border-radius:10px; padding:20px; } .muted{ color:var(--muted); font-size:14px; line-height:1.6; } .h1{ margin:0 0 8px 0; font-size:28px; } .h3{ margin:0 0 8px 0; font-size:18px; } .mt-8{ margin-top:8px; } .mt-10{ margin-top:10px; } .mt-12{ margin-top:12px; } .mt-14{ margin-top:14px; } .flex{ display:flex; align-items:center; } .flex-between{ display:flex; align-items:center; justify-content:space-between; } .flex-wrap{ flex-wrap:wrap; } .gap-10{ gap:10px; } .grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:16px; } .grid-3{ display:grid; grid-template-columns:repeat(3, 1fr); gap:14px; margin-top:16px; } .btn{ display:inline-block; padding:10px 14px; border-radius:8px; border:1px solid var(--brand); text-decoration:none; color:var(--brand); font-weight:600; } .btn-primary{ background:var(--brand); color:#fff; } .input{ padding:8px 10px; border:1px solid var(--border); border-radius:8px; width:100%; box-sizing:border-box; } .badge{ display:inline-block; font-size:12px; padding:2px 8px; border-radius:999px; border:1px solid var(--border); color:#374151; } .flash{ margin-top:16px; padding:10px 12px; border-radius:10px; border:1px solid #bbf7d0; background:#f0fdf4; color:#14532d; font-size:14px; } .error-box{ margin-top:16px; padding:10px 12px; border-radius:10px; border:1px solid #fecaca; background:#fef2f2; color:#7f1d1d; font-size:14px; } .price{ margin-top:10px; font-size:22px; font-weight:700; } @media (max-width: 980px){ .grid-3{ grid-template-columns:1fr 1fr; } } @media (max-width: 720px){ .grid-2{ grid-template-columns:1fr; } .grid-3{ grid-template-columns:1fr; } }