@import"https://fonts.googleapis.com/css2?family=Oxanium:wght@500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{color:#f7f5ff;background:#030815;font-family:Space Grotesk,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;--bg: #030815;--surface: rgba(8, 14, 32, .92);--surface-2: rgba(14, 20, 44, .88);--line: rgba(93, 123, 193, .26);--line-strong: rgba(107, 159, 255, .46);--text: #f7f5ff;--muted: #8e96ad;--muted-2: #687189;--violet: #a83cff;--violet-2: #6c34ff;--cyan: #27d9ff;--mint: #37e6b1;--amber: #ffbd2e;--danger: #ff6387;--radius: 16px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{min-width:1100px;-webkit-font-smoothing:antialiased;background:var(--bg)}button,input,select,textarea{font:inherit;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}button:disabled{opacity:.45;cursor:not-allowed}h1,h2,h3,p{margin:0}code,.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.92em}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.shell{height:100dvh;display:grid;grid-template-columns:236px minmax(0,1fr);background:radial-gradient(circle at 80% 8%,rgba(30,104,189,.15),transparent 32%),radial-gradient(circle at 18% 92%,rgba(121,32,196,.12),transparent 34%),linear-gradient(145deg,#030815,#04091a 58%,#06091b)}.shell.has-review{height:calc(100dvh - 52px)}.rail{min-width:0;background:#030612e6;border-right:1px solid rgba(99,133,204,.19);display:flex;flex-direction:column;padding:18px 14px 14px;position:relative;overflow-y:auto}.rail:after{content:"";position:absolute;top:0;right:-1px;width:1px;height:35%;background:linear-gradient(transparent,rgba(161,66,255,.85),transparent)}.brand{display:flex;align-items:center;gap:10px;padding:2px 4px 0}.brand img{width:100px;height:auto}.brand span{font:600 9px/1.2 Space Grotesk;letter-spacing:.16em;color:#ad74db;text-transform:uppercase;border-left:1px solid var(--line);padding-left:10px}.env-chip{margin:20px 0 16px;border:1px solid rgba(55,230,177,.25);background:#0a312e40;border-radius:12px;padding:9px 11px;display:grid;gap:2px}.env-chip strong{font-size:11px;color:#7fecc9}.env-chip small{font-size:10px;color:#6f9a94}.rail nav{display:flex;flex-direction:column;gap:4px}.rail nav button{height:44px;padding:0 12px;border:1px solid transparent;background:transparent;border-radius:12px;display:flex;align-items:center;gap:12px;color:#9ea5b9;cursor:pointer;text-align:left;transition:.18s ease}.rail nav button span{font-size:13px;font-weight:500}.rail nav button i{margin-left:auto;min-width:22px;height:20px;border-radius:10px;background:#7a2dda;color:#fff;display:grid;place-items:center;font-style:normal;font-size:10px}.rail nav button:hover{background:#181f3bb3;color:#fff}.rail nav button.is-active{color:#fff;background:linear-gradient(90deg,#582cb84d,#131934b8);border-color:#9d4cff80;box-shadow:inset 3px 0 #be31ff}.rail nav button.is-active svg{color:#d261ff}.rail nav button.is-locked{opacity:.45}.rail-foot{margin-top:auto;padding-top:12px;border-top:1px solid rgba(93,123,193,.18);display:grid;gap:8px}.rail-foot>button{height:34px;border:0;background:transparent;color:#8e96ad;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:10px;cursor:pointer;font-size:12px}.rail-foot>button:hover{background:#181f3bb3;color:#fff}.user-chip{border:1px solid var(--line);border-radius:13px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;padding:9px}.user-chip>span,.avatar{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#233d7f,#7e2bb0);display:grid;place-items:center;font-size:11px;font-weight:700}.user-chip strong,.user-chip small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip strong{font-size:12px}.user-chip small{color:var(--muted);font-size:10px;margin-top:2px}.app{min-width:0;display:grid;grid-template-rows:70px minmax(0,1fr)}.topbar{border-bottom:1px solid rgba(95,123,190,.2);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 24px;background:#0307149e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.crumb span{display:block;text-transform:uppercase;color:#ad74db;font-size:9px;font-weight:700;letter-spacing:.16em}.crumb h1{font-family:Oxanium,Space Grotesk,sans-serif;font-size:23px;font-weight:500;margin-top:3px;letter-spacing:-.01em}.top-actions{display:flex;align-items:center;gap:10px}.search{height:38px;width:300px;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:8px;padding:0 12px;background:#0a1022c2;color:var(--muted)}.search input{border:0;outline:0;background:transparent;width:100%;font-size:12px;color:var(--text)}.role-switch{height:38px;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:8px;padding:0 10px;background:#0a1022c2}.role-switch>span{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:linear-gradient(135deg,#2857c7,#8e2dcc);font-size:9px;font-weight:700}.role-switch select{border:0;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:#d8dbe6;font-size:12px;cursor:pointer;padding-right:4px}.role-switch option{background:#10152a}.icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:12px;display:inline-grid;place-items:center;background:#0a1022c2;cursor:pointer;color:#cfd3e2}.icon-button:hover{border-color:#9d49ffb8;background:#6526b836}.stage{min-height:0;overflow-y:auto;padding:18px 24px 40px}.stage-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.stage-head p{color:#abb1c1;font-size:12.5px;margin-top:6px}.stage-meta{display:flex;gap:14px;color:var(--muted);font-size:11px}.stage-meta span{display:inline-flex;align-items:center;gap:5px}.eyebrow{display:block;text-transform:uppercase;font-size:9.5px;line-height:1.3;letter-spacing:.17em;font-weight:700;color:#b06cdd}.view{display:grid;gap:14px;animation:stageIn .28s ease both}@keyframes stageIn{0%{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:14px;align-items:start}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row.end{justify-content:flex-end}.row.between{justify-content:space-between}.muted{color:var(--muted)}.small{font-size:12px}.stack{display:grid;gap:10px}.card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,#0e142ce6,#070c1ceb);padding:16px 18px;min-width:0}.card-flush{padding:0;overflow:hidden}.card-flush .card-head{padding:16px 18px 12px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.card-head h2{font-family:Oxanium,sans-serif;font-weight:500;font-size:17px;margin-top:4px}.card-actions{display:flex;gap:8px;align-items:center}.card p{color:#b9bfd0;font-size:13px;line-height:1.55}.stat{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#090f21cc;display:grid;gap:4px;position:relative;overflow:hidden}.stat:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--violet)}.stat-cyan:before{background:var(--cyan)}.stat-mint:before{background:var(--mint)}.stat-amber:before{background:var(--amber)}.stat-danger:before{background:var(--danger)}.stat span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.stat strong{font-family:Oxanium,sans-serif;font-size:28px;font-weight:600;font-variant-numeric:tabular-nums}.stat small{font-size:11.5px;color:#9aa2b8}.btn{height:40px;padding:0 16px;border-radius:12px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-size:13px;font-weight:600;white-space:nowrap;transition:.18s ease}.btn-small{height:32px;padding:0 12px;font-size:12px;border-radius:10px}.btn-primary{background:linear-gradient(90deg,#5b30ff,#b13cff);color:#fff;box-shadow:0 6px 22px #7d2de847}.btn-primary:hover:not(:disabled){filter:brightness(1.1)}.btn-secondary{background:#0e142ce6;border-color:var(--line-strong);color:#dfe3f0}.btn-secondary:hover:not(:disabled){border-color:#9d49ffb3}.btn-ghost{background:transparent;color:#aeb5c8}.btn-ghost:hover:not(:disabled){color:#fff;background:#181f3b99}.btn-danger{background:#ff63871f;border-color:#ff638773;color:#ff9cb3}.btn-mint{background:#37e6b11f;border-color:#37e6b173;color:#7fecc9}.pill{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:99px;font-size:11px;font-weight:600;text-transform:capitalize;white-space:nowrap;border:1px solid}.pill-mint{color:#7fecc9;border-color:#37e6b166;background:#37e6b11a}.pill-cyan{color:#7fe6ff;border-color:#27d9ff66;background:#27d9ff1a}.pill-violet{color:#d7a6ff;border-color:#a83cff73;background:#a83cff1f}.pill-amber{color:#ffd479;border-color:#ffbd2e66;background:#ffbd2e1a}.pill-danger{color:#ff9cb3;border-color:#ff638773;background:#ff63871a}.pill-muted{color:#aab1c4;border-color:#8e96ad59;background:#8e96ad14}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:10px 14px;border-bottom:1px solid var(--line);background:#04091699;white-space:nowrap}td{padding:11px 14px;border-bottom:1px solid rgba(93,123,193,.14);vertical-align:middle}tr.clickable{cursor:pointer}tr.clickable:hover td{background:#582cb81a}td.num{text-align:right;font-variant-numeric:tabular-nums}td strong{font-weight:600;display:block}td small{color:var(--muted);font-size:11.5px;display:block;margin-top:2px}tr.row-error td{background:#ff63870f}.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.form.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:grid;gap:6px;min-width:0}.field.wide{grid-column:1 / -1}.field>span{font-size:11px;color:#aeb5c8;font-weight:600;letter-spacing:.02em}.field input,.field select,.field textarea{height:42px;border:1px solid var(--line);border-radius:11px;background:#040916bf;padding:0 12px;outline:none;color:var(--text);font-size:13px;width:100%}.field textarea{height:auto;min-height:180px;padding:12px;font-family:ui-monospace,Menlo,monospace;font-size:12px;line-height:1.55;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#9d49ffbf;box-shadow:0 0 0 3px #7d2de82e}.field select option{background:#10152a}.field small{font-size:11px;color:var(--muted-2)}.field em{font-style:normal;font-size:11px;color:#ff9cb3}.field.has-error input,.field.has-error select{border-color:#ff638799}.check{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:11px 12px;cursor:pointer;background:#04091680}.check input{position:absolute;opacity:0;pointer-events:none}.check-box{width:18px;height:18px;border-radius:6px;border:1.5px solid var(--line-strong);flex:none;margin-top:1px;display:grid;place-items:center}.check.is-on{border-color:#9d49ff99;background:#582cb824}.check.is-on .check-box{background:linear-gradient(135deg,#5b30ff,#b13cff);border-color:transparent}.check.is-on .check-box:after{content:"";width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}.check:has(input:focus-visible){outline:2px solid var(--cyan);outline-offset:2px}.check-text strong{display:block;font-size:13px;font-weight:600}.check-text small{display:block;font-size:11.5px;color:var(--muted);margin-top:2px}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.steps{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:6px}.steps button{border:1px solid var(--line);background:#060b1ab3;border-radius:12px;padding:9px 10px;text-align:left;cursor:pointer;display:grid;gap:3px;color:var(--muted);min-width:0}.steps button b{font-size:10px;letter-spacing:.12em;color:var(--muted-2)}.steps button span{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.steps button.is-current{border-color:#9d4cffb3;background:#582cb838;color:#fff}.steps button.is-done{color:#b9f3df;border-color:#37e6b159}.steps button.is-done b{color:var(--mint)}.wizard-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.notice{border-radius:12px;padding:11px 14px;font-size:12.5px;line-height:1.5;display:flex;gap:10px;align-items:flex-start;border:1px solid}.notice svg{flex:none;margin-top:1px}.notice-info{border-color:#27d9ff4d;background:#27d9ff12;color:#bfefff}.notice-warn{border-color:#ffbd2e59;background:#ffbd2e12;color:#ffe2a3}.notice-danger{border-color:#ff638766;background:#ff638714;color:#ffc0cf}.notice-ok{border-color:#37e6b159;background:#37e6b112;color:#bff5e3}.kv{display:grid;grid-template-columns:170px minmax(0,1fr);gap:8px 14px;font-size:13px}.kv dt{color:var(--muted)}.kv dd{margin:0}.review-block{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#04091680}.review-block header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.review-block h3{font-size:13px;font-weight:600}.prov{display:grid;gap:8px}.prov-step{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:11px 14px;background:#04091680}.prov-step .dot{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--line-strong);color:var(--muted);font-size:11px;font-weight:700}.prov-step.is-done .dot{background:#37e6b126;border-color:var(--mint);color:var(--mint)}.prov-step.is-running{border-color:#27d9ff80}.prov-step.is-running .dot{border-color:var(--cyan);color:var(--cyan);animation:pulse 1s ease infinite}.prov-step.is-failed{border-color:#ff63878c}.prov-step.is-failed .dot{border-color:var(--danger);color:var(--danger)}.prov-step strong{font-size:13px;font-weight:600}.prov-step small{display:block;color:var(--muted);font-size:11.5px;margin-top:2px}@keyframes pulse{50%{box-shadow:0 0 0 5px #27d9ff26}}.bar{height:6px;border-radius:99px;background:#222c4ab3;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#6d2cff,#25ccff);border-radius:inherit;transition:width .3s ease}.bar.amber i{background:linear-gradient(90deg,#c77a00,#ffbd2e)}.pipeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.lane{border:1px solid var(--line);border-radius:14px;padding:12px;background:#04091680;display:grid;gap:8px;align-content:start;min-height:150px}.lane>header{display:flex;justify-content:space-between;align-items:center;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}.lane>header b{color:#fff;font-size:13px}.lane button{text-align:left;border:1px solid rgba(93,123,193,.22);background:#0c1228d9;border-radius:10px;padding:9px 10px;cursor:pointer;display:grid;gap:2px}.lane button:hover{border-color:#9d49ff99}.lane button strong{font-size:12px;font-weight:600}.lane button small{font-size:10.5px;color:var(--muted)}.list{display:grid}.list-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(93,123,193,.14)}.list-item:last-child{border-bottom:0}.list-item strong{font-size:13px;font-weight:600;display:block}.list-item small{color:var(--muted);font-size:11.5px;display:block;margin-top:2px}.start-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.option{border:1px solid var(--line);border-radius:16px;padding:18px;background:#060b1ab3;text-align:left;cursor:pointer;display:grid;gap:8px;align-content:start}.option:hover{border-color:#9d49ffa6;background:#582cb81f}.option svg{color:#d261ff}.option strong{font-size:15px;font-weight:600}.option small{font-size:12.5px;color:var(--muted);line-height:1.5}.cell-card{display:grid;gap:10px}.cell-card .row strong{font-family:Oxanium,sans-serif;font-weight:500;font-size:17px}.cards-print{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.qr-card{background:#f7f5ff;color:#14142b;border-radius:14px;padding:14px;display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:center}.qr-card svg{width:92px;height:92px}.qr-card strong{display:block;font-size:14px}.qr-card small{display:block;font-size:11px;color:#555a75;margin-top:2px}.qr-card .pin{margin-top:8px;font:700 12px ui-monospace,Menlo,monospace;letter-spacing:.2em;background:#ece8fd;border-radius:6px;padding:4px 6px;display:inline-block}.qr-card .logo{width:56px;margin-bottom:6px;filter:brightness(.2)}.lock{max-width:520px;margin:60px auto;text-align:center;display:grid;gap:12px;justify-items:center}.lock>span{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:#582cb833;color:#d261ff}.lock h2{font-family:Oxanium,sans-serif;font-weight:500;font-size:22px}.lock p{color:var(--muted);font-size:13.5px;line-height:1.55}.empty{text-align:center;padding:34px 20px;display:grid;gap:8px;justify-items:center}.empty-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#582cb82e;color:#d261ff}.empty h3{font-size:15px;font-weight:600}.empty p{color:var(--muted);font-size:13px;max-width:46ch}.modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;background:#02040cb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;z-index:30;padding:20px}.modal{width:min(560px,100%);border:1px solid var(--line-strong);border-radius:18px;background:#0a1024;box-shadow:0 30px 80px #00000080}.modal header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.modal header h2{font-family:Oxanium,sans-serif;font-weight:500;font-size:18px}.modal-body{padding:16px 18px;display:grid;gap:12px;font-size:13px;color:#c3c8d8}.modal footer{padding:14px 18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%);background:#0e1631;border:1px solid rgba(55,230,177,.45);color:#bff5e3;border-radius:12px;padding:11px 16px;display:flex;gap:8px;align-items:center;font-size:13px;z-index:40;box-shadow:0 16px 40px #00000073}.signin{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);background:radial-gradient(circle at 20% 20%,rgba(121,32,196,.25),transparent 40%),radial-gradient(circle at 80% 80%,rgba(30,104,189,.2),transparent 40%),var(--bg)}.signin-hero{padding:60px;display:grid;align-content:center;gap:18px}.signin-hero img.logo{width:150px}.signin-hero h1{font-family:Oxanium,sans-serif;font-size:44px;font-weight:600;line-height:1.05;letter-spacing:-.02em;max-width:14ch}.signin-hero p{color:#b4bacb;font-size:15px;line-height:1.6;max-width:52ch}.signin-hero ul{list-style:none;padding:0;margin:0;display:grid;gap:10px;color:#cfd3e2;font-size:13.5px}.signin-hero li{display:flex;gap:10px;align-items:center}.signin-hero li svg{color:var(--mint)}.signin-hero .blob{width:120px;opacity:.9}.signin-panel{display:grid;place-items:center;padding:40px}.signin-card{width:min(420px,100%);border:1px solid var(--line-strong);border-radius:22px;padding:28px;background:#080e20eb;display:grid;gap:16px}.signin-card h2{font-family:Oxanium,sans-serif;font-weight:500;font-size:22px}.signin-card p{color:var(--muted);font-size:13px;line-height:1.5}@media print{body{background:#fff;min-width:0}.rail,.topbar,.stage-head,.no-print,.review-rail,.toast{display:none!important}.shell{display:block;height:auto;background:none}.stage{overflow:visible;padding:0}.cards-print{grid-template-columns:repeat(3,1fr)}.qr-card{break-inside:avoid;border:1px solid #ccc}}.review-rail{position:fixed;left:0;right:0;bottom:0;height:52px;display:flex;align-items:center;gap:12px;padding:0 18px;background:#070b1c;border-top:1px solid var(--line-strong);z-index:20;font-size:12px}.review-rail strong{font-family:Oxanium,sans-serif;color:#d7a6ff}.review-rail select{height:32px;border-radius:9px;border:1px solid var(--line);background:#0d1430;padding:0 8px;max-width:320px}.review-rail .bar{flex:1}
