@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap";:root{--bg:#f7f7f7;--surface:#fff;--border:#e0e0e0;--text:#333;--text-muted:#666;--primary:#0d00ff;--primary-hover:#007acc;--secondary:#007acc;--error:#ef4444;--warning:#f59e0b;--yes:#16a34a;--yes-hover:#15803d;--no:#dc2626;--no-hover:#b91c1c;--radius:12px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.app{max-width:768px;margin:0 auto;padding:2rem 1rem}header{background:var(--primary);color:#fff;justify-content:flex-start;align-items:center;margin-bottom:0;padding:.75rem 1rem;display:flex}.header-logo{width:40px;height:40px;margin-right:.75rem}.header-text{text-align:left}header h1{color:#fff;font-size:1.5rem;font-weight:700}.subtitle{color:#fffc;margin:.25rem 0 0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;padding:1.5rem}.card h2{color:var(--text);margin-bottom:1rem;font-size:1.1rem}.card.warning{border-color:var(--warning)}.card.warning h2{color:var(--warning)}.card pre{background:var(--bg);border-radius:8px;padding:.75rem;font-size:.85rem;overflow-x:auto}.card code{background:var(--bg);border-radius:4px;padding:.15rem .4rem;font-size:.9rem}.wallet-connected{background:var(--surface);border:1px solid var(--border);border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:monospace;font-size:.9rem;display:inline-flex}.dot{background:var(--secondary);border-radius:50%;width:8px;height:8px}.input-group{margin-bottom:1rem;position:relative}.input-group input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;outline:none;padding:.75rem 3.5rem .75rem 1rem;font-size:1rem;transition:border-color .2s}.input-group input:focus{border-color:var(--primary)}.input-suffix{color:var(--text-muted);font-size:.85rem;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.btn{cursor:pointer;border:none;border-radius:8px;width:100%;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{border:1px solid var(--secondary);color:var(--secondary);background:0 0}.btn-secondary:hover:not(:disabled){background:var(--secondary);color:#fff}.btn-yes{background:var(--yes);color:#fff;flex:1;width:auto}.btn-yes:hover:not(:disabled){background:var(--yes-hover)}.btn-no{background:var(--no);color:#fff;flex:1;width:auto}.btn-no:hover:not(:disabled){background:var(--no-hover)}.tx-status{border-radius:8px;margin-top:1rem;padding:.75rem;font-size:.9rem}.tx-status.success{color:var(--secondary);background:#22c55e1a}.tx-status.error{color:var(--error);background:#ef44441a}.error{color:var(--error);margin-top:.5rem;font-size:.9rem}.hint{color:var(--text-muted);margin-top:1rem;font-size:.85rem}.address-inline{align-items:center;gap:.5rem;margin-top:.25rem;display:inline-flex}.address-inline code{word-break:break-all}.btn-copy{background:var(--border);color:var(--text);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:.2rem .5rem;font-size:.75rem}.btn-copy:hover:not(:disabled){background:var(--primary);color:#fff}.btn-copy:disabled{opacity:.5;cursor:not-allowed}.contracts-box{grid-template-columns:auto 1fr;align-items:center;gap:.5rem .75rem;display:grid}.contract-row{display:contents}.contract-row .label{color:var(--text-muted);white-space:nowrap;font-size:.85rem}.edit-address{align-items:center;gap:.5rem;min-width:0;display:flex}.edit-address input{background:var(--bg);border:1px solid var(--primary);min-width:0;color:var(--text);border-radius:4px;outline:none;flex:1;padding:.3rem .5rem;font-family:monospace;font-size:.85rem}.contract-row code{word-break:break-all}.markets-card{padding:1.5rem}.markets-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.markets-header h2{margin:0}.markets-list{flex-direction:column;gap:1rem;display:flex}.market-card{margin-bottom:0;padding:1.25rem}.market-card.market-settled{background:var(--bg)}.market-head{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.35rem;display:flex}.market-title{color:var(--text);flex:1;margin:0;font-size:1.05rem;font-weight:600}.market-meta{color:var(--text-muted);margin-bottom:1rem;font-size:.8rem}.market-meta a{color:var(--secondary);text-decoration:none}.market-meta a:hover{text-decoration:underline}.badge{letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:.2rem .6rem;font-size:.72rem;font-weight:600;display:inline-block}.badge-open{color:var(--primary);background:#0d00ff1a}.badge-yes{color:var(--yes);background:#16a34a1f}.badge-no{color:var(--no);background:#dc26261f}.pools{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem;display:grid}.pool{background:var(--bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.2rem;padding:.6rem .85rem;display:flex}.pool .label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.pool .value{font-size:.95rem;font-weight:600}.pool-yes{border-left:3px solid var(--yes)}.pool-no{border-left:3px solid var(--no)}.predict-row{align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.predict-input{flex:0 0 150px;margin-bottom:0}.predict-input input{padding:.6rem 2.5rem .6rem .75rem;font-size:.9rem}.predict-input .input-suffix{font-size:.8rem;right:.75rem}.user-pred{color:var(--text-muted);background:var(--bg);border-radius:8px;margin-bottom:.75rem;padding:.6rem .85rem;font-size:.85rem}.user-pred strong{color:var(--text)}.tag{color:var(--text-muted)}.tag-win{color:var(--yes);font-weight:600}.tag-lose{color:var(--no);font-weight:600}.market-actions{flex-wrap:wrap;gap:.5rem;display:flex}.market-actions .btn{flex:1;width:auto;min-width:140px}.empty{color:var(--text-muted);text-align:center;margin:0;padding:2rem 0;font-style:italic}@media (width<=500px){.pools{grid-template-columns:1fr}.predict-row{flex-wrap:wrap}.predict-input{flex:100%}}
