body,html{background:#0f1419;margin:0}.miniapp-root{--bg:#0f1419;--card:#1a2332;--text:#e8eef4;--muted:#8b9aab;--accent:#3faa79;--accent-hover:#359965;--violet:#b584d1;--violet-soft:#d2a4ed;--danger:#e85d5d;--border:#8b9aab33;--radius:14px;--radius-sm:10px;--max-w:480px;background:var(--bg);min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.miniapp-root,.miniapp-root *,.miniapp-root :after,.miniapp-root :before{box-sizing:border-box}.miniapp-shell{max-width:var(--max-w);padding:max(1rem,env(safe-area-inset-top)) max(1.1rem,env(safe-area-inset-right)) max(2rem,env(safe-area-inset-bottom)) max(1.1rem,env(safe-area-inset-left));flex-direction:column;min-height:100vh;margin:0 auto;display:flex}.miniapp-nav{align-items:center;min-height:1.75rem;margin-bottom:.75rem;display:flex}.miniapp-nav a{color:var(--muted);padding:.35rem 0;font-size:.85rem;font-weight:600;text-decoration:none}.miniapp-nav a:active{color:var(--accent)}.miniapp-main{flex-direction:column;flex:1;display:flex}.miniapp-brand{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.7rem}.miniapp-title{color:var(--text);margin:.35rem 0 .5rem;font-size:1.45rem;font-weight:600;line-height:1.25}.miniapp-subtitle{color:var(--muted);margin:0 0 1.25rem;font-size:.95rem;line-height:1.45}.miniapp-card{background:var(--card);border-radius:var(--radius);color:inherit;border:1px solid #0000;padding:1rem 1.1rem;text-decoration:none;transition:border-color .15s;display:block}a.miniapp-card:active{border-color:var(--accent)}.miniapp-tag{color:var(--accent);background:#3faa7933;border-radius:6px;margin-bottom:.4rem;padding:.15rem .45rem;font-size:.7rem;display:inline-block}.miniapp-tag--violet{color:var(--violet-soft);background:#b584d133}.miniapp-btn{border-radius:var(--radius-sm);cursor:pointer;touch-action:manipulation;border:1px solid #0000;justify-content:center;align-items:center;gap:.35rem;min-height:44px;padding:.75rem 1.1rem;font-family:inherit;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.miniapp-btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.miniapp-btn--primary{background:var(--accent);color:#fff;border-color:var(--accent)}.miniapp-btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.miniapp-btn--ghost{color:var(--text);border-color:var(--border);background:0 0}.miniapp-btn--ghost:hover:not(:disabled){border-color:var(--muted);background:#ffffff0a}.miniapp-btn--danger{background:var(--danger);color:#fff;border-color:var(--danger)}.miniapp-btn--violet{background:var(--violet);color:#fff;border-color:var(--violet)}.miniapp-btn--block{width:100%}.miniapp-btn-row{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1.25rem;display:flex}.miniapp-btn-row .miniapp-btn{flex:120px;max-width:280px}.miniapp-help{border-radius:var(--radius);background:linear-gradient(135deg,#2a1a22,#1a2332);border:1px solid #e85d5d59;margin-top:1.75rem;padding:1.1rem}.miniapp-help h2{margin:0 0 .5rem;font-size:1rem;font-weight:600}.miniapp-help p{color:var(--muted);margin:0 0 .85rem;font-size:.85rem;line-height:1.4}.miniapp-help-actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.miniapp-progress{background:#8b9aab40;border-radius:3px;width:100%;height:6px;margin:0 0 1.25rem;overflow:hidden}.miniapp-progress__fill{background:linear-gradient(90deg,var(--accent),var(--accent-hover));border-radius:3px;width:0;height:100%;transition:width .35s}.miniapp-progress__fill--violet{background:linear-gradient(90deg,var(--violet-soft),var(--accent))}.miniapp-muted{color:var(--muted);font-size:.9rem;line-height:1.45}.miniapp-center{text-align:center}.miniapp-label{margin-bottom:.4rem;font-size:.85rem;font-weight:500;display:block}.miniapp-field{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);resize:vertical;box-sizing:border-box;min-height:44px;margin-bottom:.25rem;padding:.75rem 1rem;font-family:inherit;font-size:.95rem}textarea.miniapp-field{min-height:120px}.miniapp-field:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.miniapp-field::placeholder{color:var(--muted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
