:root { color-scheme: light; --background: oklch(0.968 0.019 244); --foreground: oklch(0.29 0.042 252); --card: oklch(0.993 0.007 245); --card-foreground: oklch(0.34 0.032 250); --primary: oklch(0.57 0.19 258); --primary-foreground: oklch(0.99 0.004 245); --secondary: oklch(0.94 0.03 244); --secondary-foreground: oklch(0.38 0.045 250); --muted: oklch(0.955 0.017 245); --muted-foreground: oklch(0.53 0.035 248); --accent: oklch(0.918 0.045 249); --destructive: oklch(0.61 0.19 24); --border: oklch(0.85 0.04 245); --ring: oklch(0.65 0.14 256); --radius: 0.875rem; font-family: Inter, "Microsoft YaHei", system-ui, sans-serif; background: var(--background); color: var(--foreground); } .dark { color-scheme: dark; --background: oklch(0.2 0.035 252); --foreground: oklch(0.94 0.02 245); --card: oklch(0.25 0.035 251); --card-foreground: oklch(0.91 0.022 245); --primary: oklch(0.7 0.15 252); --primary-foreground: oklch(0.19 0.04 253); --secondary: oklch(0.285 0.045 250); --secondary-foreground: oklch(0.92 0.02 245); --muted: oklch(0.275 0.032 250); --muted-foreground: oklch(0.72 0.04 245); --accent: oklch(0.32 0.065 250); --destructive: oklch(0.7 0.18 24); --border: oklch(1 0 0 / 10%); --ring: oklch(0.68 0.13 252); } * { box-sizing: border-box; } body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 18% 0%, color-mix(in oklch, var(--primary) 12%, transparent) 0, transparent 35%), var(--background); } .shell { width: min(1040px, calc(100% - 40px)); margin: 0 auto; padding: 54px 0 80px; } header, .section-title, .policy, .request, .lease-details { display: flex; align-items: center; justify-content: space-between; gap: 20px; } header { margin-bottom: 34px; } h1, h2, p { margin: 0; } h1 { font-size: clamp(30px, 5vw, 48px); letter-spacing: -.04em; } h2 { font-size: 22px; } .eyebrow { color: var(--primary); font-size: 12px; letter-spacing: .16em; font-weight: 800; margin-bottom: 8px; } .lead, small { color: var(--muted-foreground); } .lead { margin-top: 12px; } a, button { font: inherit; } a { color: var(--primary); text-decoration: none; border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 14px; } .policy, .card { color: var(--card-foreground); background: color-mix(in oklch, var(--card) 94%, transparent); border: 1px solid var(--border); border-radius: calc(var(--radius) + 8px); box-shadow: 0 20px 60px oklch(0.29 0.042 252 / 12%); } .policy { padding: 18px 22px; justify-content: flex-start; margin-bottom: 18px; } .policy div { display: grid; gap: 3px; flex: 1; } .dot { width: 10px; height: 10px; border-radius: 50%; background: var(--primary); box-shadow: 0 0 16px color-mix(in oklch, var(--primary) 55%, transparent); } #clock { color: var(--muted-foreground); font-variant-numeric: tabular-nums; } .card { padding: 24px; margin-top: 18px; } .active-card { border-color: var(--ring); } .section-title { margin-bottom: 20px; } .count { min-width: 30px; height: 30px; display: grid; place-items: center; border-radius: 999px; background: var(--accent); color: var(--primary); font-weight: 800; } .empty { padding: 26px 4px; color: var(--muted-foreground); text-align: center; } .request-list { display: grid; gap: 12px; } .request { padding: 16px; border-radius: calc(var(--radius) + 3px); border: 1px solid var(--border); background: var(--muted); } .identity { display: grid; gap: 5px; min-width: 0; } .identity strong { font-size: 17px; } .identity code, .identity span { color: var(--muted-foreground); font-size: 12px; overflow-wrap: anywhere; } .actions { display: flex; gap: 8px; } button { color: var(--primary-foreground); background: var(--primary); border: 0; border-radius: var(--radius); padding: 10px 14px; cursor: pointer; font-weight: 750; } button:hover { filter: brightness(1.12); } button:disabled { opacity: .45; cursor: wait; } button.secondary { color: var(--secondary-foreground); background: var(--secondary); } button.danger { color: var(--primary-foreground); background: var(--destructive); } .lease-details { justify-content: flex-start; flex-wrap: wrap; padding: 18px; border-radius: calc(var(--radius) + 3px); background: var(--muted); border: 1px solid var(--ring); } .lease-details .timer { margin-left: auto; color: var(--primary); font-weight: 850; font-size: 22px; font-variant-numeric: tabular-nums; } .message { margin-top: 18px; min-height: 24px; color: var(--primary); } @media (max-width: 680px) { .shell { width: min(100% - 24px, 1040px); padding-top: 26px; } header, .request, .lease-details { align-items: flex-start; flex-direction: column; } .actions { width: 100%; } .actions button { flex: 1; } .lease-details .timer { margin-left: 0; } }