@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,300&family=DM+Mono:wght@400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}:root{--bg0: #0A0E1A;--bg1: #0F172A;--bg2: #1E2640;--bg3: #27334F;--bg4: #2E3D5E;--line: rgba(255,255,255,.08);--line2: rgba(255,255,255,.14);--t1: #F0F4FF;--t2: #8B9EC7;--t3: #4E5F80;--accent: #3B82F6;--accent-dim: rgba(59,130,246,.15);--accent2: #10B981;--accent2-dim: rgba(16,185,129,.12);--warn: #F59E0B;--warn-dim: rgba(245,158,11,.12);--danger: #EF4444;--danger-dim: rgba(239,68,68,.12);--r: 14px;--r-sm: 8px;--r-lg: 20px;--font: "DM Sans", system-ui, sans-serif;--mono: "DM Mono", monospace;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:var(--font);background:var(--bg0);color:var(--t1);-webkit-font-smoothing:antialiased;overscroll-behavior:none}input,textarea,select,button{font-family:var(--font)}button{cursor:pointer;border:none;background:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}::-webkit-scrollbar{display:none}.app-shell{display:flex;flex-direction:column;height:100%;max-width:480px;margin:0 auto;position:relative;overflow:hidden}.top-bar{padding:calc(var(--safe-top) + 12px) 20px 12px;background:var(--bg1);border-bottom:1px solid var(--line);flex-shrink:0;z-index:10}.screen-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:20px 20px calc(var(--safe-bottom) + 20px)}.bottom-bar{padding:12px 20px calc(var(--safe-bottom) + 12px);background:var(--bg1);border-top:1px solid var(--line);flex-shrink:0}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:15px 20px;border-radius:var(--r);font-size:15px;font-weight:500;transition:opacity .15s,transform .1s;letter-spacing:-.01em}.btn:active{transform:scale(.98);opacity:.85}.btn-primary{background:var(--accent);color:#fff}.btn-primary:disabled{opacity:.35;pointer-events:none}.btn-success{background:var(--accent2);color:#fff}.btn-ghost{background:var(--bg3);color:var(--t1)}.btn-outline{background:transparent;border:1px solid var(--line2);color:var(--t2)}.btn-sm{padding:7px 14px;font-size:13px;border-radius:var(--r-sm);width:auto}.card{background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);padding:16px}.field{margin-bottom:16px}.field-label{font-size:11px;font-weight:500;color:var(--t3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;display:flex;justify-content:space-between;align-items:center}.field-label .action{font-size:12px;color:var(--accent);text-transform:none;letter-spacing:0;font-weight:400;cursor:pointer}.field-input{width:100%;background:var(--bg3);border:1px solid var(--line);border-radius:var(--r-sm);padding:11px 13px;font-size:14px;color:var(--t1);transition:border-color .15s;-webkit-appearance:none}.field-input:focus{outline:none;border-color:var(--accent);background:var(--bg4)}textarea.field-input{resize:none;min-height:90px;line-height:1.55}.tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.tag{padding:6px 13px;border-radius:20px;border:1px solid var(--line);background:var(--bg3);font-size:13px;color:var(--t2);transition:all .15s;cursor:pointer}.tag.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent);font-weight:500}.tag.active-green{background:var(--accent2-dim);border-color:var(--accent2);color:var(--accent2);font-weight:500}.section-head{font-size:11px;font-weight:600;color:var(--t3);text-transform:uppercase;letter-spacing:.1em;margin:24px 0 10px}.section-head:first-child{margin-top:0}.step-dots{display:flex;gap:5px;align-items:center}.step-dot{width:6px;height:6px;border-radius:3px;background:var(--bg4);transition:all .25s}.step-dot.active{width:20px;background:var(--accent)}.step-dot.done{background:var(--accent2)}.mono{font-family:var(--mono);font-size:12px}.divider{height:1px;background:var(--line);margin:16px 0}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.badge-blue{background:var(--accent-dim);color:var(--accent)}.badge-green{background:var(--accent2-dim);color:var(--accent2)}.badge-amber{background:var(--warn-dim);color:var(--warn)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.fade-up{animation:fadeUp .3s ease both}.spin{animation:spin .75s linear infinite}.pulse{animation:pulse 1.5s ease infinite}.row{display:flex;gap:12px}.row .field{flex:1}
