/*
Theme Name: NextFlow AI
Theme URI: https://nextflowaiagency.com/
Author: NextFlow AI
Description: Custom lightweight theme for NextFlow AI — AI automation and consulting agency. Dark, animated design with built-in SEO metadata, structured data and lead capture.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
License: Proprietary
Text Domain: nextflow
*/

/* Main styles live in assets/css/. This file only carries site-wide fixes. */
.nf-site{background:#07090D;color:#F4F7FB;overflow-x:clip;position:relative;min-height:100vh}
.nf-mobile-nav{border-top:1px solid #141A24;padding:12px 18px 22px;display:none;flex-direction:column;gap:2px}
.nf-mobile-nav.open{display:flex}
.nf-mobile-nav .navlink{font-size:17px;padding:12px 0}
.navlink.active{color:#F4F7FB}
.nf-notice{border-radius:14px;padding:14px 16px;font-size:14px;line-height:1.5}
.nf-notice.err{background:#2A1215;border:1px solid #6B2A31;color:#FFC9CE}
.prose a{color:#00E5FF}
.prose img{max-width:100%;height:auto;border-radius:16px}
.prose h3{font-family:'Space Grotesk',sans-serif;font-size:24px;color:#F4F7FB;margin:40px 0 12px}
.wp-block-image figcaption{font-size:13px;color:#9BA7B8}
.nf-pagination{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.nf-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border-radius:999px;border:1px solid #232C3A;color:#C5CEDB;text-decoration:none}
.nf-pagination .page-numbers.current,.nf-pagination .page-numbers:hover{border-color:#00E5FF;color:#F4F7FB}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Blog article extras */
.progress{position:fixed;left:0;top:0;height:2px;width:100%;background:linear-gradient(90deg,#00E5FF,#4263FF);transform-origin:left;transform:scaleX(0);z-index:100}
@supports (animation-timeline: scroll()){.progress{animation:prog linear both;animation-timeline:scroll(root)}}
@keyframes prog{to{transform:scaleX(1)}}
.share{width:44px;height:44px;border-radius:50%;border:1px solid #232C3A;display:flex;align-items:center;justify-content:center;transition:all .3s ease;background:none;cursor:pointer}
.share:hover{border-color:#00E5FF;background:#0A1A1F}
@media (prefers-reduced-motion:reduce){.progress{animation:none}}
.nf-empty{border:1px dashed #2E3B50;border-radius:20px;padding:48px;text-align:center;color:#9BA7B8}
.pill{text-decoration:none}
.toc a.on{color:#00E5FF}
.prose img{max-width:100%;height:auto;border-radius:16px}
.prose figure{margin:32px 0}
.prose .wp-block-image figcaption{font-size:13px;color:#7A8699;text-align:center}

/* NextFlow Assistant (chatbot) */
.nf-chat{position:fixed;right:24px;bottom:96px;z-index:95;width:400px;max-width:calc(100vw - 32px);height:min(620px,calc(100vh - 128px));background:#0B0F16;border:1px solid #1F2734;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 60px -20px rgba(0,229,255,.25);font-family:Inter,sans-serif;color:#F4F7FB;transform-origin:bottom right;animation:nfchatin .35s cubic-bezier(.2,.8,.2,1)}
.nf-chat[hidden]{display:none}
@keyframes nfchatin{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
.nf-chat-head{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 14px 18px;border-bottom:1px solid #1C2330}
.nf-chat-x{width:44px;height:44px;border:0;background:transparent;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.nf-chat-x:hover{background:#141A24}
.nf-chat-log{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px;overscroll-behavior:contain}
.nf-msg{max-width:86%;padding:12px 14px;font-size:14px;line-height:1.55;white-space:pre-wrap;word-wrap:break-word}
.nf-msg.bot{align-self:flex-start;background:#10141C;border:1px solid #1C2330;border-radius:16px 16px 16px 4px}
.nf-msg.user{align-self:flex-end;background:#00E5FF;color:#07090D;border-radius:16px 16px 4px 16px}
.nf-msg .src{display:block;margin-top:8px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.04em;color:#7A8699}
.nf-msg.typing{display:flex;gap:5px;align-items:center}
.nf-msg.typing i{width:6px;height:6px;border-radius:50%;background:#00E5FF;opacity:.4;animation:nfdot 1s infinite}
.nf-msg.typing i:nth-child(2){animation-delay:.15s}.nf-msg.typing i:nth-child(3){animation-delay:.3s}
@keyframes nfdot{50%{opacity:1;transform:translateY(-3px)}}
.nf-chips,.nf-links{display:flex;flex-wrap:wrap;gap:6px}
.nf-chips button{border:1px solid #232C3A;background:transparent;color:#C5CEDB;border-radius:999px;padding:0 12px;min-height:34px;font:12px Inter,sans-serif;cursor:pointer;transition:border-color .2s,color .2s}
.nf-chips button:hover{border-color:#00E5FF;color:#F4F7FB}
.nf-links a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;background:#0A1A1F;border:1px solid #12404A;color:#F4F7FB;text-decoration:none;font-size:13px;font-weight:500}
.nf-links a:hover{border-color:#00E5FF;color:#F4F7FB}
.nf-chat-form{border-top:1px solid #1C2330;padding:12px;display:flex;gap:8px;align-items:center}
.nf-chat-form input{flex:1;min-width:0;height:46px;background:#07090D;border:1px solid #232C3A;border-radius:12px;color:#F4F7FB;font:14px Inter,sans-serif;padding:0 14px}
.nf-chat-form input:focus{outline:2px solid #00E5FF;outline-offset:1px;border-color:transparent}
.nf-chat-form button{width:46px;height:46px;flex:none;border:0;border-radius:12px;background:#00E5FF;cursor:pointer;display:flex;align-items:center;justify-content:center}
.nf-chat-form button:disabled{opacity:.5;cursor:default}
.nf-chat-note{margin:0;padding:0 16px 12px;font-size:11px;line-height:1.5;color:#7A8699;text-align:center}
.nf-chat-note a{color:#9BA7B8}
body.nf-chat-open .chat-launch{border-color:#00E5FF}
@media (max-width:640px){.nf-chat{right:8px;left:8px;bottom:84px;width:auto;max-width:none;height:calc(100vh - 100px);height:calc(100dvh - 100px)}}
@media (prefers-reduced-motion:reduce){.nf-chat{animation:none}.nf-msg.typing i{animation:none}}
