
:root {
  --bg: #0b1020;
  --panel: #111831;
  --panel-2: #182346;
  --text: #eef2ff;
  --muted: #9fb0d9;
  --accent: #7dd3fc;
  --accent-2: #a78bfa;
  --ok: #34d399;
  --warn: #fbbf24;
  --danger: #fb7185;
  --border: rgba(255,255,255,0.08);
  --shadow: 0 20px 50px rgba(0,0,0,0.35);
}
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  background: radial-gradient(circle at top, #16234d 0%, var(--bg) 45%);
  color: var(--text);
  line-height: 1.5;
}
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
.container { width: min(1280px, calc(100% - 32px)); margin: 0 auto; }
.hero { padding: 42px 0 28px; }
.kicker { color: var(--accent); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: 12px; }
h1 { font-size: clamp(36px, 6vw, 64px); line-height: 1.02; margin: 10px 0 16px; }
.subhead { font-size: 18px; color: var(--muted); max-width: 920px; }
.grid { display: grid; gap: 18px; }
.summary-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); margin: 28px 0; }
.card {
  background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
  border: 1px solid var(--border);
  border-radius: 20px;
  box-shadow: var(--shadow);
}
.card.pad { padding: 20px; }
.metric { font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: .06em; }
.metric-value { font-size: 28px; font-weight: 800; margin-top: 8px; }
.badge { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 999px; font-weight: 700; font-size: 13px; }
.badge.ok { background: rgba(52,211,153,.16); color: #8ef0c3; }
.badge.warn { background: rgba(251,191,36,.14); color: #ffd56d; }
.badge.info { background: rgba(125,211,252,.14); color: #a8e5ff; }
.section { padding: 18px 0 8px; }
.section h2 { font-size: 28px; margin: 0 0 14px; }
.cols-2 { grid-template-columns: 1.1fr .9fr; }
@media (max-width: 960px) { .cols-2 { grid-template-columns: 1fr; } }
ul.clean { padding-left: 18px; margin: 10px 0; }
.phone-wrap { display:flex; justify-content:center; align-items:center; padding: 12px; }
.phone {
  width: 310px; height: 645px; border-radius: 42px; background: linear-gradient(180deg, #1c2338, #0d1222);
  border: 1px solid rgba(255,255,255,.12); position: relative; box-shadow: 0 20px 60px rgba(0,0,0,.45);
}
.camera-bump {
  position:absolute; top:22px; left:18px; width:92px; height:92px; border-radius:28px;
  background: rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.08);
}
.camera-bump:before, .camera-bump:after, .camera-lens {
  content:''; position:absolute; width:26px; height:26px; border-radius:50%; background:#0a0f1d; border:1px solid rgba(255,255,255,.12);
}
.camera-bump:before { top:14px; left:14px; }
.camera-bump:after { top:14px; right:14px; }
.camera-lens { left:33px; bottom:14px; }
.magsafe {
  position:absolute; left:50%; top:47%; transform: translate(-50%, -50%); width:172px; height:172px;
  border-radius:50%; border: 2px dashed rgba(125,211,252,.35);
}
.calarin {
  position:absolute; left:50%; top:57%; transform: translate(-50%, -50%); width:122px; height:188px;
  border-radius:28px; background: linear-gradient(180deg, #1b2b55, #11192f); border:1px solid rgba(255,255,255,.12);
  box-shadow: 0 12px 32px rgba(0,0,0,.35);
}
.calarin .ring { position:absolute; top:24px; left:50%; transform:translateX(-50%); width:54px; height:54px; border-radius:50%; border:6px solid #6ee7b7; }
.calarin .button { position:absolute; top:36px; left:50%; transform:translateX(-50%); width:24px; height:24px; border-radius:50%; background:#f8fafc; }
.calarin .battery { position:absolute; left:50%; bottom:26px; transform:translateX(-50%); width:54px; height:92px; border-radius:12px; border:2px solid rgba(125,211,252,.7); color:#bdeaff; display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; }
.legend { color: var(--muted); font-size: 14px; margin-top: 10px; }
.diagram { width:100%; height:auto; display:block; border-radius:16px; background:#0c1328; }
.kv { display:grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr)); gap:12px; }
.kv .item { padding:14px; border-radius:16px; background: rgba(255,255,255,.03); border:1px solid var(--border); }
.kv .label { font-size:12px; text-transform:uppercase; letter-spacing:.06em; color: var(--muted); }
.kv .value { font-size:20px; font-weight:800; margin-top:6px; }
.gallery { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.gallery .thumb { overflow:hidden; }
.gallery img { width:100%; height:300px; object-fit:contain; background:#fff; display:block; }
.gallery .caption { padding:14px; font-weight:700; }
.docs { grid-template-columns: 1fr 1fr; }
@media (max-width: 960px) { .docs { grid-template-columns: 1fr; } }
details.doc { overflow:hidden; }
details.doc summary { cursor:pointer; list-style:none; padding:18px 20px; font-weight:800; font-size:16px; }
details.doc summary::-webkit-details-marker { display:none; }
pre.docbody { margin:0; padding:0 20px 20px; white-space:pre-wrap; word-break:break-word; color:#d9e3ff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size:13px; line-height:1.55; }
.footer { padding: 28px 0 50px; color: var(--muted); font-size: 14px; }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
.btn { display:inline-flex; padding:10px 14px; border-radius:12px; background:rgba(125,211,252,.12); border:1px solid rgba(125,211,252,.24); color:#d8f4ff; font-weight:700; }
.note { color: var(--muted); font-size: 15px; }
