*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-bg: #0f172a;--color-surface: #1e293b;--color-surface-hover: #334155;--color-text: #f8fafc;--color-text-muted: #94a3b8;--color-border: #334155;--color-error: #ef4444;--color-success: #22c55e;--color-warning: #eab308;--color-danger: #ef4444;--radius: 8px;--radius-md: 8px;--radius-lg: 12px;--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}html{color-scheme:dark}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font:inherit}input,select,textarea{font:inherit;color:inherit}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-text-muted)}.form-group input,.form-group select{padding:10px 12px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:.9375rem}.form-group input:focus,.form-group select:focus{outline:2px solid var(--color-primary);outline-offset:-1px;border-color:var(--color-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:var(--radius);font-weight:500;font-size:.9375rem;border:none;transition:background .15s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-hover)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover{background:#dc2626}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{background:none;color:var(--color-text-muted);border:none}.btn-ghost:hover{color:var(--color-text)}.btn-sm{padding:6px 12px;font-size:.8125rem}.error-message{color:var(--color-error);font-size:.875rem}.success-message{color:var(--color-success);font-size:.875rem}.field-error{color:var(--color-error);font-size:.8125rem}.inline-message{padding:10px 14px;border-radius:var(--radius);font-size:.875rem;margin-bottom:1rem}.inline-message-success{background:#22c55e1a;color:var(--color-success);border:1px solid rgba(34,197,94,.2)}.inline-message-error{background:#ef44441a;color:var(--color-error);border:1px solid rgba(239,68,68,.2)}.public-layout{min-height:100vh;display:flex;align-items:center;justify-content:center}.public-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;width:100%;max-width:400px}.public-card h1{font-size:1.5rem;margin-bottom:.5rem;text-align:center}.public-card .subtitle{color:var(--color-text-muted);text-align:center;margin-bottom:1.5rem}.app-topbar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.app-topbar .logo{font-weight:700;font-size:1.125rem;color:var(--color-text)}.app-topbar .user-info{display:flex;align-items:center;gap:1rem;color:var(--color-text-muted)}.app-content{max-width:800px;margin:0 auto;padding:2rem 1.5rem}.wizard-shell{max-width:600px;margin:0 auto;padding:2rem 0}.wizard-steps{display:flex;gap:.5rem;margin-bottom:2rem}.wizard-step{flex:1;height:4px;border-radius:2px;background:var(--color-border)}.wizard-step.active{background:var(--color-primary)}.wizard-step.completed{background:var(--color-success)}.permission-list{list-style:none;padding:0;margin:1rem 0}.permission-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--color-border)}.permission-item .icon{font-size:1.25rem}.permission-item .icon.granted{color:var(--color-success)}.permission-item .icon.denied{color:var(--color-danger)}.permission-item .icon.pending{color:var(--color-text-muted)}.progress-tracker{list-style:none;padding:0}.progress-step{display:flex;align-items:center;gap:.75rem;padding:.75rem 0}.progress-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.progress-dot.pending{background:var(--color-border)}.progress-dot.running{background:var(--color-warning);animation:pulse 1s infinite}.progress-dot.done{background:var(--color-success)}.progress-dot.failed{background:var(--color-danger)}.progress-step .label{color:var(--color-text)}.progress-step .error-text{color:var(--color-danger);font-size:.875rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.active{background:#22c55e26;color:var(--color-success)}.status-badge.failed{background:#ef444426;color:var(--color-danger)}.status-badge.destroyed{background:#94a3b826;color:var(--color-text-muted)}.status-badge.deploying{background:#eab30826;color:var(--color-warning)}.danger-zone{border:1px solid var(--color-danger);border-radius:var(--radius-lg);padding:1.5rem;margin-top:2rem}.danger-zone h3{color:var(--color-danger);margin-bottom:.5rem}.color-picker-wrapper{display:flex;align-items:center;gap:.75rem}.color-preview{width:36px;height:36px;border-radius:var(--radius-md);border:2px solid var(--color-border)}.domain-selector{display:flex;gap:.5rem;align-items:center}.domain-selector select{flex:1}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0}.toggle{position:relative;width:44px;height:24px}.toggle input{opacity:0;width:0;height:0}.toggle .slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-border);border-radius:12px;cursor:pointer;transition:.2s}.toggle .slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s}.toggle input:checked+.slider{background:var(--color-primary)}.toggle input:checked+.slider:before{transform:translate(20px)}.review-section{margin-bottom:1.5rem}.review-section h3{font-size:.875rem;color:var(--color-text-muted);margin-bottom:.5rem}.review-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--color-border)}.auth-link{text-align:center;margin-top:1rem;color:var(--color-text-muted)}.auth-link a{color:var(--color-primary)}.platform-url{font-size:1.25rem;color:var(--color-primary);word-break:break-all}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem}.page-header{margin-bottom:1.5rem}.page-title{font-size:1.5rem;font-weight:600}
