.publish-modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.publish-modal-card{background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:24px;max-width:600px;width:100%;max-height:92vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080;border:1px solid rgba(255,255,255,.1);animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.publish-modal-header{background:linear-gradient(135deg,#3b82f6,#8b5cf6);padding:30px;text-align:center;color:#fff}.publish-icon-wrapper{width:60px;height:60px;margin:0 auto 15px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.publish-icon{width:32px;height:32px}.publish-modal-header h2{margin:0 0 8px;font-size:1.8rem;font-weight:700}.project-name{margin:0;opacity:.9;font-size:1rem}.publish-modal-body{padding:30px;flex:1;overflow-y:auto}.publish-step h3{color:#fff;margin:0 0 20px;font-size:1.3rem;font-weight:600}.domain-options{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.domain-option{display:flex;align-items:flex-start;gap:15px;padding:20px;background:#1e293b80;border:2px solid rgba(71,85,105,.3);border-radius:16px;cursor:pointer;transition:all .3s ease}.domain-option:hover{border-color:#3b82f680;background:#1e293bcc}.domain-option.selected{border-color:#3b82f6;background:#3b82f61a}.domain-option input[type=radio]{margin-top:3px;accent-color:#3b82f6}.option-content{flex:1}.option-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.option-icon{width:20px;height:20px;color:#60a5fa}.option-header strong{color:#fff;font-size:1.1rem}.badge-free{background:#10b981;color:#fff;padding:2px 8px;border-radius:6px;font-size:.7rem;font-weight:700;margin-left:auto}.badge-pro{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;padding:2px 8px;border-radius:6px;font-size:.7rem;font-weight:700;margin-left:auto}.option-description{color:#94a3b8;font-size:.9rem;margin:0;word-break:break-all}.custom-domain-input{margin-top:20px}.custom-domain-input label{display:block;color:#cbd5e1;font-weight:600;margin-bottom:8px}.domain-input{width:100%;padding:12px 16px;background:#0f172acc;border:2px solid rgba(71,85,105,.5);border-radius:12px;color:#fff;font-size:1rem;outline:none;transition:all .3s ease}.domain-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.domain-note{display:flex;align-items:center;gap:8px;margin-top:10px;padding:12px;background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:8px;color:#fbbf24;font-size:.85rem}.note-icon{width:16px;height:16px;flex-shrink:0}.error-message{display:flex;align-items:center;gap:10px;padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#fca5a5;margin-top:15px}.error-icon{width:20px;height:20px;flex-shrink:0}.success-step{text-align:center}.success-animation{margin-bottom:20px}.success-checkmark{width:80px;height:80px;margin:0 auto;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff;animation:scaleUp .5s ease}@keyframes scaleUp{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.success-step h3{color:#fff;margin:20px 0 10px}.success-step>p{color:#94a3b8;margin-bottom:25px}.published-url-box{display:flex;gap:10px;padding:16px;background:#1e293bcc;border:1px solid rgba(71,85,105,.5);border-radius:12px;margin-bottom:25px}.url-display{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.url-icon{width:20px;height:20px;color:#60a5fa;flex-shrink:0}.url-text{color:#fff;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-copy{padding:10px;background:#3b82f633;border:none;border-radius:8px;color:#60a5fa;cursor:pointer;transition:all .3s ease}.btn-copy:hover{background:#3b82f6;color:#fff}.btn-copy .icon{width:18px;height:18px}.dns-instructions{background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:12px;padding:20px;margin-bottom:25px;text-align:left}.dns-instructions h4{color:#fbbf24;margin:0 0 15px;font-size:1.1rem}.dns-instructions ol{color:#cbd5e1;margin:0;padding-left:20px}.dns-instructions li{margin-bottom:8px;line-height:1.6}.dns-instructions code{background:#0f172acc;padding:2px 8px;border-radius:4px;color:#60a5fa;font-family:monospace}.dns-instructions strong{color:#fff}.success-actions{display:flex;gap:12px;justify-content:center}.btn-visit,.btn-done{padding:14px 24px;border:none;border-radius:12px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-visit{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff}.btn-visit:hover{transform:translateY(-2px);box-shadow:0 10px 20px #3b82f64d}.btn-done{background:#4755694d;color:#fff}.btn-done:hover{background:#47556980}.publish-modal-footer{display:flex;gap:12px;padding:20px 30px;border-top:1px solid rgba(71,85,105,.3);flex-shrink:0;background:linear-gradient(135deg,#1e293b,#0f172a)}.btn-cancel,.btn-publish{flex:1;padding:14px 20px;border:none;border-radius:12px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-cancel{background:#4755694d;color:#fff}.btn-cancel:hover{background:#47556980}.btn-publish{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff}.btn-publish:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #3b82f64d}.btn-publish:disabled{opacity:.6;cursor:not-allowed}.btn-publish .icon,.btn-visit .icon{width:20px;height:20px}.spinning{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:640px){.publish-modal-overlay{align-items:flex-end;padding:0}.publish-modal-card{max-width:100%;width:100%;margin:0;border-radius:24px 24px 0 0;max-height:92vh;height:auto}.publish-modal-header{padding:20px 20px 16px}.publish-modal-body{padding:16px 20px}.publish-modal-footer{flex-direction:row;padding:14px 20px;padding-bottom:max(14px,env(safe-area-inset-bottom))}.success-actions{flex-direction:column}.btn-visit,.btn-done{width:100%}}.live-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#10b98114;border:1px solid rgba(16,185,129,.25);border-radius:14px;margin-bottom:20px}.live-dot{width:8px;height:8px;border-radius:50%;background:#10b981;flex-shrink:0;box-shadow:0 0 8px #10b98199;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.live-banner-info{flex:1;min-width:0}.live-banner-label{display:block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#10b981;margin-bottom:2px}.live-banner-url{display:block;color:#e2e8f0;font-size:.9rem;font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}.live-banner-url:hover{color:#10b981}.live-banner-actions{display:flex;gap:6px;flex-shrink:0}.live-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:#10b9811f;color:#6ee7b7;cursor:pointer;text-decoration:none;transition:all .2s}.live-action-btn:hover{background:#10b9814d;color:#fff}.pub-tabs{display:flex;gap:8px;padding:6px;background:#0f172a99;border-radius:14px;margin-bottom:20px;border:1px solid rgba(51,65,85,.5)}.pub-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border:none;border-radius:10px;background:transparent;color:#64748b;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .25s ease}.pub-tab:hover{color:#cbd5e1;background:#1e293b80}.pub-tab.active{background:#3b82f626;color:#93c5fd}.tab-badge{padding:2px 7px;border-radius:6px;font-size:.65rem;font-weight:800;letter-spacing:.04em}.tab-badge.free{background:#10b98133;color:#34d399}.tab-badge.pro{background:linear-gradient(135deg,#f59e0b4d,#ef44444d);color:#fbbf24}.tab-content{animation:fadeSlideIn .2s ease}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tab-desc{color:#94a3b8;font-size:.88rem;margin-bottom:16px}.subdomain-input-wrapper{display:flex;align-items:center;background:#0f172acc;border:2px solid rgba(71,85,105,.5);border-radius:12px;overflow:hidden;transition:border-color .25s}.subdomain-input-wrapper:focus-within{border-color:#3b82f6}.subdomain-prefix{padding:12px 4px 12px 16px;color:#64748b;font-family:monospace;font-size:.95rem;white-space:nowrap}.subdomain-field{flex:1;background:transparent;border:none;outline:none;padding:12px 16px 12px 0;color:#fff;font-family:monospace;font-size:.95rem}.subdomain-preview{font-size:.8rem;color:#64748b;margin-top:8px}.warn-box{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 14px;background:#f59e0b14;border:1px solid rgba(245,158,11,.25);border-radius:10px;color:#fbbf24;font-size:.82rem;line-height:1.5}.domain-enter-row{display:flex;gap:10px}.domain-enter-row .domain-input{flex:1}.btn-next{display:flex;align-items:center;gap:6px;padding:12px 18px;background:#3b82f6;color:#fff;border:none;border-radius:12px;font-weight:700;font-size:.9rem;cursor:pointer;white-space:nowrap;transition:all .2s}.btn-next:hover:not(:disabled){background:#2563eb;transform:translate(2px)}.btn-next:disabled{opacity:.5;cursor:not-allowed}.step-dots{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.step-dot{width:8px;height:8px;border-radius:50%;background:#47556980;transition:all .3s}.step-dot.done{background:#10b981}.step-dot.active{background:#3b82f6;width:24px;border-radius:4px}.dns-guide-card{background:#0f172ab3;border:1px solid rgba(59,130,246,.3);border-radius:16px;padding:20px;margin-bottom:14px}.dns-guide-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.dns-guide-header h4{color:#fff;font-size:1rem;font-weight:700;margin:0 0 4px}.recommended-badge{flex-shrink:0;padding:3px 10px;background:#3b82f633;color:#93c5fd;border:1px solid rgba(59,130,246,.4);border-radius:20px;font-size:.7rem;font-weight:700}.dns-table{background:#020617b3;border-radius:10px;overflow:hidden;border:1px solid rgba(51,65,85,.5)}.dns-table-row{display:flex;align-items:center;padding:10px 14px;border-bottom:1px solid rgba(51,65,85,.4)}.dns-table-row:last-child{border-bottom:none}.dns-table-label{width:56px;flex-shrink:0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.dns-table-value{flex:1;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.dns-table-value code{font-family:monospace;font-size:.9rem;color:#e2e8f0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dns-copy-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:6px;background:#4755694d;color:#94a3b8;cursor:pointer;flex-shrink:0;transition:all .2s}.dns-copy-btn:hover{background:#3b82f64d;color:#93c5fd}.dns-tip{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:10px 12px;background:#3b82f614;border-radius:8px;font-size:.8rem;color:#94a3b8;line-height:1.5}.dns-tip code{background:#0f172acc;padding:1px 6px;border-radius:4px;color:#93c5fd;font-family:monospace}.alt-method-details{margin-bottom:16px}.alt-method-details summary{color:#64748b;font-size:.82rem;cursor:pointer;padding:6px 0;list-style:none}.alt-method-details summary::-webkit-details-marker{display:none}.alt-method-details summary:before{content:"▶ ";font-size:.7rem}.alt-method-details[open] summary:before{content:"▼ "}.step1-actions{display:flex;gap:10px;margin-top:16px}.btn-back-sm{padding:10px 16px;background:#4755694d;color:#94a3b8;border:none;border-radius:10px;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-back-sm:hover{background:#47556980;color:#fff}.btn-next-outline{flex:1;padding:10px 16px;background:transparent;border:1.5px solid rgba(59,130,246,.5);color:#93c5fd;border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-next-outline:hover{background:#3b82f61a}.verify-card{background:#0f172ab3;border:1px solid rgba(71,85,105,.3);border-radius:16px;padding:24px;text-align:center}.verify-domain-label{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:20px;padding:10px 20px;background:#1e293bb3;border-radius:10px;border:1px solid rgba(51,65,85,.5)}.btn-verify{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border:none;border-radius:12px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .25s;margin-bottom:16px}.btn-verify:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #6366f166}.btn-verify:disabled{opacity:.7;cursor:not-allowed}.verify-result{border-radius:12px;padding:14px;text-align:left;font-size:.85rem}.verify-result.success{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:#6ee7b7}.verify-result.fail{background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#fca5a5}.verify-success-content,.verify-fail-content{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.verify-detail{font-size:.78rem;margin:4px 0 0;padding-left:28px;opacity:.7}.cf-step{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid rgba(51,65,85,.35)}.cf-step:last-of-type{border-bottom:none}.cf-step-num{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-size:.78rem;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:1px}.cf-step-body{flex:1;font-size:.88rem;color:#e2e8f0;line-height:1.55}.cf-step-body strong{color:#fff;font-weight:700}.cf-step-body code{background:#0f172ae6;padding:1px 6px;border-radius:4px;color:#93c5fd;font-family:monospace;font-size:.82rem}.cf-step-body a{transition:color .2s}.cf-step-body a:hover{color:#60a5fa}
