:root{--bg: #0b1020;--card: #141b30;--panel-2: #0f1730;--ink: #f8fafc;--muted: #94a3b8;--accent: #2563eb;--accent-bright: #22c55e;--neutral: #334155;--danger: #7f1d1d;--r: 12px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.wrap{max-width:640px;margin:0 auto;padding:2rem 1rem 4rem}h1{font-size:1.4rem}h2{font-size:1.1rem;margin-top:0}.steps{display:flex;gap:.5rem;list-style:none;padding:0;margin:1rem 0;counter-reset:s}.steps li{flex:1;text-align:center;padding:.5rem;border-radius:10px;background:var(--panel-2);color:var(--muted);font-size:.85rem;counter-increment:s}.steps li:before{content:counter(s) ". "}.steps li.active{background:var(--accent);color:#fff}.steps li.past{color:var(--accent-bright)}.card{background:var(--card);border-radius:16px;padding:1.2rem}.card.success{border:1px solid var(--accent-bright)}.hint{color:var(--muted);font-size:.9rem}input,select,button{font:inherit}input,select{width:100%;padding:.7rem;border-radius:10px;border:1px solid var(--neutral);background:var(--panel-2);color:var(--ink);margin:.4rem 0}button{background:var(--accent);color:#fff;border:none;padding:.8rem 1.2rem;border-radius:12px;font-weight:600;cursor:pointer;margin-top:.6rem}button:disabled{opacity:.5;cursor:default}.row label{display:block;font-size:.9rem;color:var(--muted)}.error{background:var(--danger);padding:.7rem 1rem;border-radius:10px}table.map{width:100%;border-collapse:collapse}table.map td{padding:.25rem .4rem .25rem 0;vertical-align:middle}table.map td:first-child{white-space:nowrap;color:var(--muted);font-size:.9rem}.link{display:flex;gap:.5rem}.link input{flex:1}.link button{margin-top:.4rem;white-space:nowrap}.card+.card{margin-top:1rem}.lbl{display:block;font-size:.85rem;color:var(--muted);margin-top:.4rem}.grid2{display:grid;grid-template-columns:1fr 1fr 80px;gap:.5rem}.entry{display:flex;gap:.4rem;align-items:center;margin:.3rem 0}.entry input,.entry select{margin:0}.entry .rm{margin:0;background:var(--danger);padding:.55rem .7rem}.role-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.ghost{background:transparent;border:1px dashed var(--neutral);color:var(--muted);width:100%;margin-right:.5rem}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
