:root{color-scheme:light dark;--fg: #1f2933;--muted: #6b7280;--card: #ffffff;--bg: #f4f6f8;--accent: #2563eb;--danger: #dc2626;--border: #e5e7eb}@media(prefers-color-scheme:dark){:root{--fg: #e5e7eb;--muted: #9ca3af;--card: #1c2128;--bg: #12161c;--accent: #60a5fa;--danger: #f87171;--border: #2d333b}}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--fg)}.portal{max-width:560px;margin:0 auto;padding:24px 16px 48px;display:flex;flex-direction:column;gap:16px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:12px}.login-card{margin-top:12vh}.brand{font-size:24px;font-weight:700;letter-spacing:2px;margin:0}.portal-header{display:flex;align-items:center;gap:12px}.portal-header .brand{font-size:18px}.portal-header .link{margin-left:auto}.stack{display:flex;flex-direction:column;gap:10px}.row{display:flex;gap:8px}.row input{flex:1}input{padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--fg);font-size:15px}button{padding:10px 16px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-size:15px;cursor:pointer}button:disabled{opacity:.6;cursor:default}button.ghost{background:transparent;border:1px solid var(--border);color:var(--fg);font-size:13px;padding:6px 12px}button.link{background:none;color:var(--accent);padding:4px 8px;font-size:13px;text-decoration:underline;border:none;width:fit-content}.entitlements,.devices{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.entitlements li{padding:10px 12px;border:1px solid var(--border);border-radius:8px}.devices li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px}.subs-detail summary{cursor:pointer}.muted{color:var(--muted)}.small{font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.error{color:var(--danger);font-size:14px;margin:0}.footer-hint{text-align:center}h2{margin:0;font-size:17px}.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.plan{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--border, #e3e5e8);border-radius:10px}.plan-name{font-weight:600}.plan-price strong{font-size:1.4em}.plan-features{margin:0;padding-left:18px;flex:1}
