:root{color-scheme:dark light;--bg: #0f1115;--bg-elev: #171a21;--bg-elev-2: #1f232c;--border: #2a2f3a;--text: #e6e8ee;--muted: #9aa3b2;--accent: #7dd3fc;--accent-strong: #38bdf8;--accent-text: #08131a;--ok: #4ade80;--warn: #fbbf24;--error: #f87171;--info: #a5b4fc;--radius: 12px;--focus: 0 0 0 3px rgba(125, 211, 252, .55)}@media(prefers-color-scheme:light){:root{--bg: #f6f7f9;--bg-elev: #ffffff;--bg-elev-2: #eef1f5;--border: #d6dae2;--text: #14171d;--muted: #5b6472;--accent: #0369a1;--accent-strong: #0284c7;--accent-text: #ffffff;--ok: #15803d;--warn: #b45309;--error: #b91c1c;--info: #4338ca;--focus: 0 0 0 3px rgba(3, 105, 161, .4)}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;overflow-x:hidden;-webkit-tap-highlight-color:transparent;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}h1,h2,h3{margin:0;line-height:1.2;text-wrap:balance;scroll-margin-top:1rem}h1{font-size:1.5rem}h2{font-size:1.15rem}h3{font-size:1rem}p{margin:0;overflow-wrap:anywhere}a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}a:hover{color:var(--accent-strong);text-decoration-thickness:2px}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:.5rem;top:-100px;background:var(--accent);color:var(--accent-text);padding:.5rem .75rem;border-radius:8px;z-index:10}.skip-link:focus{top:.5rem}.site-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding:1rem clamp(1rem,3vw,2rem);border-bottom:1px solid var(--border);background:var(--bg-elev)}.brand{display:flex;align-items:center;gap:.75rem;min-width:0}.brand-mark{width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:radial-gradient(circle at 50% 50%,var(--accent) 0 8px,transparent 9px),linear-gradient(135deg,var(--bg-elev-2),var(--bg));border:2px solid var(--accent)}.tagline{color:var(--muted);font-size:.9rem}.site-header nav{display:flex;flex-wrap:wrap;gap:.25rem .9rem;font-size:.95rem}.site-header nav a{padding:.25rem 0;text-decoration:none;color:var(--muted)}.site-header nav a:hover{color:var(--text);text-decoration:underline}.layout{display:grid;gap:1rem;padding:1rem clamp(1rem,3vw,2rem) 2rem;max-width:1120px;margin:0 auto;grid-template-columns:1fr}@media(min-width:900px){.layout{grid-template-columns:repeat(2,minmax(0,1fr))}#members,#contracts,#activity{grid-column:1 / -1}}.layout:focus{outline:none}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.85rem;min-width:0;scroll-margin-top:1rem}.card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:.75rem;min-width:0}.row{display:flex;align-items:center;gap:.6rem;min-width:0}.row.wrap,.wrap{flex-wrap:wrap}.muted{color:var(--muted)}.ok-text{color:var(--ok)}.warn-text{color:var(--warn)}.error-text{color:var(--error)}.num,.kv dd,td.num,time{font-variant-numeric:tabular-nums}.kv{display:grid;grid-template-columns:1fr;gap:.5rem 1rem;margin:0}@media(min-width:560px){.kv{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}.kv>div{min-width:0}.kv dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;overflow-wrap:anywhere}.pill{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .6rem;border-radius:999px;font-size:.8rem;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);white-space:nowrap}.pill-ok{border-color:var(--ok);color:var(--ok)}.pill-warn{border-color:var(--warn);color:var(--warn)}.pill-error{border-color:var(--error);color:var(--error)}.pill-info{border-color:var(--info);color:var(--info)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem 1rem;min-height:44px;border-radius:10px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);font:inherit;font-weight:600;cursor:pointer;text-decoration:none;touch-action:manipulation;transition:background-color .12s ease,border-color .12s ease,transform .12s ease}.btn:hover:not(:disabled){border-color:var(--accent);background:var(--bg)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn-primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.btn-secondary{border-color:var(--accent);color:var(--accent);align-self:flex-start}.btn-ghost{background:transparent}.btn-sm{min-height:36px;padding:.3rem .7rem;font-size:.9rem}.btn-lg{min-height:52px;padding:.7rem 1.4rem;font-size:1.05rem}.btn-link{background:none;border:none;padding:0;font:inherit;color:var(--accent);text-decoration:underline;cursor:pointer;min-height:24px}.btn-link:hover:not(:disabled){color:var(--accent-strong)}.btn-link:disabled{opacity:.55;cursor:not-allowed}.wallet-icon{border-radius:4px}.notice{display:flex;gap:.5rem;align-items:flex-start;border:1px solid var(--border);border-left-width:4px;border-radius:10px;padding:.75rem .9rem;background:var(--bg-elev-2)}.notice-body{display:flex;flex-direction:column;gap:.4rem;min-width:0;flex:1 1 auto}.notice-body .btn{align-self:flex-start}.notice-warn{border-left-color:var(--warn)}.notice-error{border-left-color:var(--error)}.raw{margin:.25rem 0 0;font-size:.8rem;white-space:pre-wrap;overflow-wrap:anywhere;max-height:12rem;overflow:auto;background:var(--bg);padding:.5rem;border-radius:6px}details summary{cursor:pointer;color:var(--muted);font-size:.85rem}.spinner-wrap{display:inline-flex;align-items:center;gap:.5rem;color:var(--muted)}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent);animation:spin .8s linear infinite;transform-origin:center}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none;border-top-color:var(--border);border-style:dashed}.btn,.progress-fill{transition:none}}.balance{display:flex;flex-direction:column;gap:.5rem}.balance-row{display:flex;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.progress{height:10px;border-radius:999px;background:var(--bg-elev-2);border:1px solid var(--border);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--ok));transition:width .24s ease}.badge-card{display:flex;gap:1rem;align-items:center;padding:1rem;border-radius:var(--radius);border:1px solid var(--ok);background:linear-gradient(135deg,rgba(74,222,128,.08),transparent)}.badge-card.badge-lapsed{border-color:var(--warn);background:linear-gradient(135deg,rgba(251,191,36,.1),transparent)}.badge-art{flex:0 0 84px;width:84px;height:84px;border-radius:18px;display:grid;place-items:center;font-weight:700;font-size:1.1rem;color:var(--accent-text);background:conic-gradient(from 200deg,var(--accent),var(--ok),var(--accent));box-shadow:inset 0 0 0 4px var(--bg-elev)}.badge-lapsed .badge-art{background:conic-gradient(from 200deg,var(--warn),var(--bg-elev-2),var(--warn));color:var(--text)}.badge-meta{min-width:0;display:flex;flex-direction:column;gap:.3rem}.table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--border);vertical-align:top}th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}tr.is-you td{background:#7dd3fc14}.you{font-size:.8rem;color:var(--accent)}.swap-form{display:flex;flex-direction:column;gap:.85rem}fieldset{border:none;margin:0;padding:0}.radio{display:inline-flex;align-items:center;gap:.45rem;min-height:40px;padding:.2rem .6rem;border:1px solid var(--border);border-radius:10px;cursor:pointer}.radio:hover{border-color:var(--accent)}.radio input{margin:0;width:18px;height:18px;accent-color:var(--accent)}.field-row{display:grid;gap:.75rem;grid-template-columns:1fr}@media(min-width:560px){.field-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}.field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.field label{font-size:.85rem;color:var(--muted)}.field input{font:inherit;font-variant-numeric:tabular-nums;padding:.6rem .75rem;min-height:44px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text);width:100%}.field input[aria-invalid=true]{border-color:var(--error)}.field input:focus-visible{border-color:var(--accent)}.quote{padding:.75rem .9rem;border-radius:10px;background:var(--bg-elev-2);display:flex;flex-direction:column;gap:.25rem;min-height:3rem;font-variant-numeric:tabular-nums}.steps{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem}.step{display:flex;gap:.6rem;align-items:baseline}.step-status{display:inline-block;width:1.3rem;text-align:center;font-weight:700}.step-done{color:var(--ok)}.step-active{color:var(--accent)}.step-error{color:var(--error)}.step-skipped,.step-todo{color:var(--muted)}.activity{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.35rem;max-height:22rem;overflow:auto;overscroll-behavior:contain;font-size:.9rem;content-visibility:auto}.activity li{display:grid;grid-template-columns:auto 1fr;gap:.6rem;padding:.3rem .4rem;border-radius:6px;border-left:3px solid var(--border)}.activity time{color:var(--muted);white-space:nowrap}.activity-msg{min-width:0;overflow-wrap:anywhere}.activity-ok{border-left-color:var(--ok)}.activity-warn{border-left-color:var(--warn)}.activity-error{border-left-color:var(--error)}.activity-info{border-left-color:var(--info)}.site-footer{padding:1rem clamp(1rem,3vw,2rem) calc(1.5rem + env(safe-area-inset-bottom));color:var(--muted);font-size:.9rem;border-top:1px solid var(--border);max-width:1120px;margin:0 auto}
