:root{
  --bg:#0b0d12;
  --card:#10141c;
  --ink:#e9eefc;
  --muted:#a9b4d1;
  --line:rgba(233,238,252,.18);
  --line2:rgba(233,238,252,.10);
  --accent:#38B0A0;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  background: radial-gradient(1200px 800px at 20% 0%, rgba(56,176,160,.18), transparent 55%),
              radial-gradient(900px 700px at 90% 10%, rgba(242,201,76,.12), transparent 50%),
              var(--bg);
  color:var(--ink);
}

a{color:inherit}

.container{max-width:1200px;margin:0 auto;padding:28px 18px 60px}

.header{
  display:flex;gap:14px;align-items:flex-start;justify-content:space-between;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(16,20,28,.92), rgba(16,20,28,.65));
  backdrop-filter: blur(10px);
  border-radius:16px;
  padding:18px;
}

.h-title{font-size:20px;font-weight:700;letter-spacing:-0.02em;margin:0}
.h-sub{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.4}

.pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.pill{
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  color:var(--muted);
}

.section{margin-top:22px}
.section h2{margin:0 0 10px;font-size:15px;letter-spacing:-0.01em;color:var(--ink)}
.section p{margin:0 0 12px;color:var(--muted);font-size:13px;line-height:1.45}

.grid{
  display:grid;
  gap:14px;
}

@media (min-width: 980px){
  /* One column for readability (options are long) */
  .grid.cols-3{grid-template-columns:1fr}
  .grid.cols-2{grid-template-columns:1fr}
}

.card{
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(16,20,28,.92), rgba(16,20,28,.72));
  border-radius:16px;
  overflow:hidden;
  min-width: 0; /* prevent grid overflow */
}

.card-head{padding:14px 14px 0}
.card-title{margin:0;font-size:15px;font-weight:700;letter-spacing:-0.01em}
.card-desc{margin:6px 0 0;color:rgba(233,238,252,.78);font-size:13px;line-height:1.45}

.card-body{padding:14px; overflow:hidden}

.wf-row{display:grid;gap:14px}
@media (min-width: 980px){
  .wf-row{grid-template-columns: 0.9fr 1.1fr}
}

.frame{
  border:1px dashed var(--line);
  border-radius:14px;
  padding:12px;
  background:rgba(255,255,255,.02);
  overflow: hidden; /* clip previews so they don't bleed into neighbor columns */
}

.frame-label{font-size:12px;color:var(--muted);margin:0 0 10px}

.phone{
  width: 100%;
  max-width: 290px;
  margin: 0 auto;
  border:1px solid var(--line);
  border-radius:26px;
  padding:10px;
  background:rgba(0,0,0,.22);
}

.phone-inner{
  border:1px solid var(--line2);
  border-radius:18px;
  overflow:hidden;
  background:rgba(16,20,28,.65);
}

.desktop{
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden; /* clip */
  background:rgba(16,20,28,.55);
}

.wf{
  padding:10px;
  display:grid;
  gap:8px;
}

.wf-box{
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px;
  background:rgba(255,255,255,.02);
  font-size:13px;
  color:var(--ink);
}

.wf-box small{display:block;color:rgba(233,238,252,.72);margin-top:4px;line-height:1.35;font-size:12px}

.wf-box.accent{border-color:rgba(56,176,160,.55); box-shadow: inset 0 0 0 1px rgba(56,176,160,.20)}

.wf-grid-2{display:grid;gap:8px;grid-template-columns:repeat(2, 1fr)}
.wf-grid-3{display:grid;gap:8px;grid-template-columns:repeat(3, 1fr)}

.split{
  display:grid;
  gap:8px;
}
@media (min-width: 560px){
  .split{grid-template-columns: 1.1fr 0.9fr}
}

.rule{
  display:flex;gap:10px;align-items:flex-start;
  border:1px solid var(--line2);
  background:rgba(255,255,255,.02);
  border-radius:14px;
  padding:12px;
}
.rule b{color:var(--ink)}
.rule span{color:var(--muted);font-size:12px;line-height:1.4}

.summary{
  border-top:1px solid var(--line2);
  padding:12px 14px 14px;
}
.summary-title{font-size:12px;color:rgba(233,238,252,.7);text-transform:uppercase;letter-spacing:.12em;margin:0 0 8px}
.summary ul{margin:0;padding-left:18px;color:rgba(233,238,252,.78);font-size:13px;line-height:1.45}
.summary li{margin:4px 0}

.footer{margin-top:26px;color:var(--muted);font-size:12px}

.code{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size:12px;
  color:rgba(233,238,252,.85);
}
