:root{--bg: #0F1113;--bg-raised: #151719;--bg-surface: #1B1D20;--bg-card: #1B1D20;--orange: #F7931A;--orange-hover: #E68212;--orange-dim: rgba(247, 147, 26, .12);--orange-tint: rgba(247, 147, 26, .08);--white: #EDEFF2;--white-dim: rgba(237, 239, 242, .6);--gray: #6B6B6B;--gray-light: #AEB4BC;--red: #E74C3C;--green: #2ECC71;--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--radius: 8px;--radius-lg: 12px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;background:var(--bg);color:var(--white);font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}button{font-family:var(--font);font-weight:500;cursor:pointer;border:none;outline:none}input,select{font-family:var(--font);background:var(--bg-raised);color:var(--white);border:1px solid rgba(237,239,242,.1);border-radius:var(--radius);padding:10px 14px;font-size:16px;outline:none;transition:border-color .15s ease-out}input:focus,select:focus{border-color:var(--orange)}input::placeholder{color:var(--gray)}.ceremony{max-width:640px;margin:0 auto;padding:40px 20px}.ceremony h1{font-size:24px;font-weight:700;margin-bottom:4px}.ceremony .subtitle{color:var(--white-dim);font-size:14px;margin-bottom:32px}.steps{display:flex;gap:8px;margin-bottom:32px}.step-dot{width:8px;height:8px;border-radius:50%;background:#edeff226;transition:background .2s}.step-dot.active{background:var(--orange)}.step-dot.done{background:var(--green)}.card{background:var(--bg-card);border:1px solid rgba(237,239,242,.06);border-radius:var(--radius-lg);padding:24px;margin-bottom:16px}.card h2{font-size:18px;font-weight:600;margin-bottom:16px}.card p{color:var(--white-dim);font-size:14px;margin-bottom:16px}.form-row{display:flex;gap:12px;margin-bottom:16px}.form-row label{display:flex;flex-direction:column;gap:6px;flex:1;font-size:13px;font-weight:500;color:var(--gray-light)}.form-row input,.form-row select{width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius);font-size:15px;font-weight:600;transition:background .15s,opacity .15s}.btn-primary{background:var(--orange);color:#000}.btn-primary:hover:not(:disabled){background:var(--orange-hover)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{background:var(--bg-raised);color:var(--white);border:1px solid rgba(237,239,242,.1)}.btn-secondary:hover:not(:disabled){border-color:#edeff233}.btn-full{width:100%}.shares-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:24px}.share-card{background:var(--bg-raised);border:1px solid rgba(237,239,242,.06);border-radius:var(--radius);padding:16px;display:flex;align-items:center;justify-content:space-between}.share-card .party-label{font-weight:600;font-size:15px}.share-card .party-status{font-size:13px;color:var(--gray-light)}.share-card .party-status.downloaded{color:var(--green)}.pubkey-display{background:var(--bg-raised);border:1px solid rgba(237,239,242,.06);border-radius:var(--radius);padding:12px 16px;font-family:Courier New,monospace;font-size:13px;word-break:break-all;color:var(--orange);margin-bottom:16px;-webkit-user-select:all;user-select:all}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bg-surface);border:1px solid rgba(237,239,242,.1);border-radius:var(--radius-lg);padding:24px;width:400px;max-width:90vw}.modal h3{font-size:16px;font-weight:600;margin-bottom:16px}.modal .modal-actions{display:flex;gap:12px;margin-top:16px}.warning{background:#e74c3c14;border:1px solid rgba(231,76,60,.2);border-radius:var(--radius);padding:12px 16px;font-size:13px;color:var(--red);margin-bottom:16px}.success-box{background:#2ecc7114;border:1px solid rgba(46,204,113,.2);border-radius:var(--radius);padding:12px 16px;font-size:13px;color:var(--green);margin-bottom:16px}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(237,239,242,.2);border-top-color:var(--orange);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
