/* SellerCabin legal pages — presentation only. The legal text lives in each HTML file. */
:root { --legal-ink: #111a35; --legal-muted: #5f6d86; --legal-blue: #3156e8; --legal-line: #e5eaf3; --legal-surface: #f7f9fd; }
body.legal-page { margin: 0; background: var(--legal-surface); color: var(--legal-ink); font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.legal-page .legal-nav { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid var(--legal-line); background: rgba(255,255,255,.94); backdrop-filter: blur(12px); }
.legal-page .legal-nav-inner, .legal-page .legal-footer-inner { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.legal-page .legal-nav-inner { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.legal-page .legal-brand { display: inline-flex; align-items: center; gap: 10px; color: var(--legal-ink); font-size: 20px; font-weight: 700; text-decoration: none; letter-spacing: -.04em; }
.legal-page .legal-brand-mark { display:grid; width:32px; height:32px; place-items:center; border-radius:9px; background:linear-gradient(135deg,#3e68f4,#6958e8); color:#fff; box-shadow:0 6px 14px rgba(49,86,232,.22); }
.legal-page .legal-brand-mark svg { width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:2.3; }
.legal-page .legal-nav-links { display:flex; align-items:center; gap:22px; }
.legal-page .legal-nav-links a { color:#53617b; font-size:14px; font-weight:600; text-decoration:none; }
.legal-page .legal-nav-links a:hover, .legal-page .legal-nav-links a:focus-visible { color:var(--legal-blue); }
.legal-page .legal-nav-links .legal-nav-cta { padding:10px 14px; border-radius:9px; background:var(--legal-blue); color:#fff; box-shadow:0 8px 18px rgba(49,86,232,.18); }
.legal-page .legal-nav-links .legal-nav-cta:hover { color:#fff; background:#2848c6; }
.legal-page .legal-main { width:min(1080px, calc(100% - 40px)); margin:0 auto; padding:42px 0 64px; }
.legal-page .legal-back { display:inline-flex; align-items:center; gap:8px; margin-bottom:28px; color:#53617b; font-size:14px; font-weight:650; text-decoration:none; }
.legal-page .legal-back:hover { color:var(--legal-blue); }
.legal-page .legal-back svg { width:17px; height:17px; }
.legal-page .legal-hero { padding:30px 32px; border:1px solid var(--legal-line); border-radius:20px; background:#fff; box-shadow:0 12px 30px rgba(22,37,73,.045); }
.legal-page .legal-kicker { margin:0 0 9px; color:var(--legal-blue); font-size:12px; font-weight:800; letter-spacing:.11em; }
.legal-page .legal-hero h1 { margin:0; color:var(--legal-ink); font-size:clamp(34px,5vw,52px); line-height:1.05; letter-spacing:-.045em; }
.legal-page .legal-hero .updated { margin:13px 0 0; color:var(--legal-muted); font-size:14px; }
.legal-page .legal-content { margin-top:18px; padding:32px; border:1px solid var(--legal-line); border-radius:20px; background:#fff; box-shadow:0 12px 30px rgba(22,37,73,.045); }
.legal-page .legal-content .intro { margin:0 0 32px; padding-bottom:28px; border-bottom:1px solid var(--legal-line); color:#35425c; font-size:17px; line-height:1.7; }
.legal-page .legal-content h2 { scroll-margin-top:92px; margin:42px 0 13px; color:var(--legal-ink); font-size:22px; line-height:1.25; letter-spacing:-.025em; }
.legal-page .legal-content h2:first-of-type { margin-top:0; }
.legal-page .legal-content h3 { margin:25px 0 8px; color:#263452; font-size:16px; }
.legal-page .legal-content p, .legal-page .legal-content li { color:#4e5d76; font-size:15px; line-height:1.72; }
.legal-page .legal-content ul { padding-left:22px; }
.legal-page .legal-content li + li { margin-top:7px; }
.legal-page .legal-content a { color:#2448c5; font-weight:650; text-decoration-thickness:1px; text-underline-offset:3px; }
.legal-page .legal-content .box { margin:26px 0; padding:18px 20px; border:1px solid #cfd9fb; border-radius:14px; background:#f4f7ff; color:#364562; line-height:1.65; }
.legal-page .legal-content .toc { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 22px; margin:26px 0 34px; padding:20px; border-radius:14px; background:#f7f9fd; }
.legal-page .legal-content .toc a { font-size:13px; font-weight:600; text-decoration:none; }
.legal-page .legal-content table { display:table; width:100%; margin:18px 0 28px; border:1px solid var(--legal-line); border-collapse:separate; border-spacing:0; border-radius:12px; overflow:hidden; font-size:14px; }
.legal-page .legal-content th { padding:12px 14px; background:#17264d; color:#fff; text-align:left; }
.legal-page .legal-content td { padding:13px 14px; border-top:1px solid var(--legal-line); color:#4e5d76; line-height:1.55; vertical-align:top; }
.legal-page .legal-footer { border-top:1px solid var(--legal-line); background:#fff; }
.legal-page .legal-footer-inner { display:flex; align-items:flex-start; justify-content:space-between; gap:28px; padding:27px 0; color:#68758c; font-size:12px; line-height:1.6; }
.legal-page .legal-footer p { margin:0; max-width:690px; }
.legal-page .legal-footer nav { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:14px; }
.legal-page .legal-footer a { color:#53617b; text-decoration:none; }
.legal-page .legal-footer a:hover { color:var(--legal-blue); }
@media (max-width:720px) { .legal-page .legal-nav-inner, .legal-page .legal-footer-inner, .legal-page .legal-main { width:calc(100% - 32px); } .legal-page .legal-nav-inner { min-height:61px; } .legal-page .legal-nav-links { gap:14px; } .legal-page .legal-nav-links a:not(.legal-nav-cta) { display:none; } .legal-page .legal-main { padding:28px 0 48px; } .legal-page .legal-back { margin-bottom:18px; } .legal-page .legal-hero, .legal-page .legal-content { padding:25px 20px; border-radius:16px; } .legal-page .legal-content .toc { grid-template-columns:1fr; } .legal-page .legal-content table { display:block; overflow-x:auto; white-space:normal; } .legal-page .legal-footer-inner { flex-direction:column; gap:14px; padding:23px 0; } .legal-page .legal-footer nav { justify-content:flex-start; } }
