/* Plonq shared landing-page styles. Imported by terms/privacy/delete/expired
   and the soon-to-be home page. Keep tokens here in sync with the Coral
   preset in lib/core/theme/theme_tokens.dart so the web reads as the app. */
:root{
  --peach:#FCD5B5; --peach-soft:#F8DCD0;
  --cream:#FBF3EA; --paper:#FFFAF2;
  --ink:#1C1814; --muted:#6F655C;
  --coral:#E07A5F; --coral-band:#B85540;
  --line:#EFE3CF; --positive:#3B8C5F; --negative:#C4604E;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink); background:var(--cream); line-height:1.55;
  -webkit-text-size-adjust:100%; -webkit-font-smoothing:antialiased;
}
/* Use --coral-band for link text — the lighter --coral fails WCAG AA on
   --cream (3.34:1, needs 4.5:1). --coral stays as the brand accent for
   non-text surfaces (buttons, dots). */
a{color:var(--coral-band); text-decoration:underline; text-underline-offset:2px}
a:hover{color:var(--ink)}
a:focus-visible{
  outline:2px solid var(--coral-band); outline-offset:3px;
  border-radius:4px;
}

/* Top bar */
.plonq-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:22px 24px; max-width:860px; width:100%; margin:0 auto;
}
.plonq-brand{
  display:flex; align-items:center; gap:10px;
  font-weight:800; font-size:18px; letter-spacing:-0.01em;
  color:var(--ink); text-decoration:none;
}
.plonq-brand img{width:32px; height:32px; border-radius:8px}
.plonq-nav a{
  color:var(--muted); text-decoration:none; font-size:14px;
  margin-left:18px;
}
.plonq-nav a:hover{color:var(--ink)}

/* Long-form content (Terms / Privacy) */
.plonq-doc{
  max-width:760px; margin:0 auto; padding:30px 24px 60px;
}
.plonq-doc h1{
  font-size:2.2rem; font-weight:800; letter-spacing:-0.025em;
  line-height:1.15; margin-bottom:6px;
}
.plonq-doc .meta{
  color:var(--muted); font-size:0.95rem; margin-bottom:30px;
  padding-bottom:24px; border-bottom:1px solid var(--line);
}
.plonq-doc h2{
  font-size:1.4rem; font-weight:800; letter-spacing:-0.02em;
  margin:36px 0 10px;
}
.plonq-doc h3{
  font-size:1.1rem; font-weight:700; margin:24px 0 8px;
}
.plonq-doc p{margin-bottom:14px; color:var(--ink); font-size:1rem}
.plonq-doc p.muted{color:var(--muted)}
.plonq-doc ul, .plonq-doc ol{margin:8px 0 16px 22px}
.plonq-doc li{margin:6px 0}
.plonq-doc table{
  width:100%; border-collapse:collapse; margin:14px 0 18px;
  font-size:0.95rem;
}
.plonq-doc th, .plonq-doc td{
  text-align:left; padding:10px 12px; border-bottom:1px solid var(--line);
  vertical-align:top;
}
.plonq-doc th{font-weight:700; background:var(--paper)}
.plonq-doc .toc{
  background:var(--paper); border:1px solid var(--line); border-radius:14px;
  padding:14px 18px; margin:18px 0 24px;
}
.plonq-doc .toc h3{margin:0 0 6px; font-size:0.85rem; letter-spacing:0.1em;
  text-transform:uppercase; color:var(--muted)}
.plonq-doc .toc ol{margin:0 0 0 20px}
.plonq-doc .toc li{margin:3px 0; font-size:0.94rem}
.plonq-doc .callout{
  background:var(--peach-soft); border-radius:14px;
  padding:14px 18px; margin:18px 0;
}

/* Centered single-message card (expired link, delete-account) */
.plonq-card-wrap{
  flex:1; display:flex; align-items:center; justify-content:center;
  padding:30px 18px 60px;
}
.plonq-card{
  width:100%; max-width:480px;
  background:#fff; border-radius:24px;
  box-shadow:0 24px 60px -22px rgba(120,80,40,0.32);
  padding:34px 28px;
}
.plonq-card .mark{
  width:64px; height:64px; margin:0 auto 16px;
  border-radius:18px; overflow:hidden;
  background:linear-gradient(160deg,#ffe1c6,var(--peach));
  display:flex; align-items:center; justify-content:center;
}
.plonq-card .mark img{width:100%; height:100%; object-fit:cover}
.plonq-card h1{
  font-size:1.5rem; font-weight:800; letter-spacing:-0.02em;
  text-align:center; line-height:1.25;
}
.plonq-card p{
  margin-top:10px; color:var(--muted); font-size:1rem; text-align:center;
}
.plonq-card .actions{margin-top:22px; display:flex; flex-direction:column; gap:10px}
.plonq-btn{
  display:block; padding:14px 20px;
  font-size:1rem; font-weight:700; text-align:center;
  background:var(--ink); color:#fff; border:0; border-radius:14px;
  text-decoration:none; cursor:pointer;
}
.plonq-btn.outline{
  background:transparent; color:var(--ink);
  border:1px solid var(--line);
}
.plonq-btn:hover{filter:brightness(1.05)}

/* Footer */
.plonq-footer{
  text-align:center; padding:22px 18px 36px;
  font-size:0.82rem; color:var(--muted);
  border-top:1px solid var(--line); margin-top:40px;
  max-width:860px; margin-left:auto; margin-right:auto;
}
.plonq-footer a{color:var(--muted)}
.plonq-footer .soon{display:block; margin-top:6px; opacity:0.78; font-size:0.78rem}

@media (max-width:560px){
  .plonq-doc h1{font-size:1.8rem}
  .plonq-doc h2{font-size:1.2rem}
  .plonq-card{padding:28px 22px}
}
