/* additions.css — new components for B Tecky site.
   Loaded AFTER style.css on every page that uses these blocks.
   Reuses the existing CSS variables from style.css (--ink, --blue, etc).
   Add this line to <head>, right after the style.css link:
     <link rel="stylesheet" href="additions.css">
*/

/* ---------- community bar (footer + home section) ---------- */
.community{padding:40px 0}
.community .wrap>.sec-head{margin-bottom:22px}
.comm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.comm-card{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;text-decoration:none;color:var(--ink);transition:transform .15s,border-color .15s}
.comm-card:hover{transform:translateY(-2px);border-color:var(--blue);color:var(--ink)}
.comm-card .ic{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:#e9eefc;flex:none}
.comm-card .ic svg{width:22px;height:22px}
.comm-card b{display:block;font-size:.98rem}
.comm-card span{display:block;color:var(--muted);font-size:.84rem}

/* small icon row used inline in the footer on every page */
.foot-community{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
.foot-community a{display:inline-flex;align-items:center;gap:7px;color:#dfe6ff;text-decoration:none;font-size:.88rem;font-weight:600;background:rgba(255,255,255,.06);padding:7px 12px;border-radius:99px}
.foot-community a:hover{background:rgba(255,255,255,.14);color:#fff}
.foot-community svg{width:15px;height:15px}

/* ---------- mentorship CTA ---------- */
.mentor-cta{background:linear-gradient(135deg,#173bc2,#2456ff);color:#fff;border-radius:22px;padding:34px;display:flex;gap:24px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.mentor-cta h2,.mentor-cta h3{color:#fff}
.mentor-cta p{margin:8px 0 0;color:#dfe6ff;max-width:36em}
.mentor-cta .btn-line{color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}
.mentor-cta .btn-line:hover{box-shadow:inset 0 0 0 2px #fff;color:#fff}
.nav .mentor-link{background:var(--yellow);color:var(--ink)!important;font-weight:700;border-radius:8px}

/* ---------- partners ---------- */
.partner-note{color:var(--muted);font-size:.98rem;max-width:44em;margin:0 0 22px}
.partner-row{display:flex;flex-wrap:wrap;align-items:center;gap:28px}
.partner-logo{display:flex;align-items:center;justify-content:center;height:64px;padding:0 10px;filter:grayscale(1);opacity:.8;transition:filter .15s,opacity .15s}
.partner-logo:hover{filter:grayscale(0);opacity:1}
.partner-logo img{max-height:100%;max-width:150px;object-fit:contain}
.partner-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:26px}
.partner-item{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px 20px}
.partner-item b{display:block;margin-bottom:4px}
.partner-item span{color:var(--muted);font-size:.94rem}

/* ---------- testimonials ---------- */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.testi-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px}
.testi-card q{display:block;font-size:1.02rem;line-height:1.6;margin:0 0 16px;quotes:none}
.testi-who{display:flex;align-items:center;gap:12px}
.testi-avatar{width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:700 .95rem var(--display);flex:none}
.testi-who b{display:block;font-size:.94rem}
.testi-who span{display:block;color:var(--muted);font-size:.84rem}
.testi-src{margin-top:10px}
.testi-src a{font-size:.82rem;color:var(--muted)}

/* ---------- write page (self-publish) ---------- */
.write-gate{max-width:420px;margin:80px auto;padding:0 22px}
.write-gate .panel{text-align:center}
.write-gate input{width:100%;font:500 1.05rem var(--body);padding:14px 16px;border-radius:12px;border:2px solid var(--line);margin:16px 0}
.write-wrap{max-width:1040px;margin:0 auto;padding:30px 22px 80px}
.write-head{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.write-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.write-form label{display:block;font-weight:700;font-size:.92rem;margin:16px 0 6px}
.write-form label:first-child{margin-top:0}
.write-form input[type=text],.write-form select,.write-form textarea{width:100%;font:500 1rem var(--body);padding:12px 14px;border-radius:10px;border:2px solid var(--line);background:#fff;color:var(--ink)}
.write-form textarea{min-height:340px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92rem;line-height:1.6;resize:vertical}
.write-form input:focus,.write-form select:focus,.write-form textarea:focus{outline:none;border-color:var(--blue)}
.write-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.write-status{margin-top:12px;font-size:.9rem}
.write-status.ok{color:var(--ok)}
.write-status.err{color:#c41a11}
.write-preview{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px;max-height:640px;overflow-y:auto}
.write-list{margin-top:40px}
.write-post-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.write-post-row .t{flex:1}
.write-post-row b{display:block}
.write-post-row span{color:var(--muted);font-size:.86rem}
.write-post-row .btn{padding:8px 14px;font-size:.85rem}
.draft-tag{display:inline-block;background:var(--yellow);color:var(--ink);font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:99px;margin-left:8px}

@media (max-width:900px){
  .comm-grid,.testi-grid,.partner-list{grid-template-columns:1fr 1fr}
  .write-grid{grid-template-columns:1fr}
}
@media (max-width:620px){
  .comm-grid,.testi-grid,.partner-list{grid-template-columns:1fr}
  .partner-row{gap:20px}
}

.partners-section,.testimonials-section{padding:0}.section-intro{margin-bottom:22px}.section-intro h2{margin:4px 0 7px}.section-intro p:last-child{color:var(--muted)}.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.partner-card{display:flex;align-items:center;gap:14px;padding:18px;background:var(--card);border:1px solid var(--line);border-radius:16px;text-decoration:none;color:var(--ink)}.partner-card:hover{border-color:var(--blue);transform:translateY(-2px)}.partner-logo-wrap{width:58px;height:46px;display:grid;place-items:center;flex:none}.partner-logo-wrap img{max-width:58px;max-height:40px;object-fit:contain}.partner-card strong{display:block}.partner-card span{display:block;color:var(--muted);font-size:.84rem;margin-top:2px}.testimonials-empty{border:1px dashed var(--line);border-radius:16px;padding:22px;color:var(--muted);background:var(--card)}.community-home{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:28px}.community-home h2{margin:4px 0 7px}.community-home>div:first-child p:last-child{color:var(--muted)}.community-footer-block{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:22px}.community-footer-block h2{color:#fff;margin:3px 0 6px}.community-footer-block p{color:#cbd4f1;margin:0;max-width:42rem}.community-footer-block .eyebrow{color:#8fa8ff}.community-footer-links{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.community-footer-links a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.07);color:#fff;text-decoration:none;font-weight:600;font-size:.85rem}.community-footer-links a:hover{background:rgba(255,255,255,.14)}.community-footer-icon svg{width:16px;height:16px;display:block}
.partner-grid{grid-template-columns:1fr 1fr}.community-footer-block{grid-template-columns:1fr}.community-footer-links{justify-content:flex-start}}.feature-home-section .sec-head{display:block}.feature-home-section .sec-head .text-link{display:inline-block;margin-top:8px}}

/* Public blog view counter */
.post-meta [data-blog-views] { white-space: nowrap; }


/* Blog video embeds */
.post-video{max-width:980px;margin:0 auto 28px;padding:0 22px}.post-video-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px}.post-video-head a{font-size:.9rem;font-weight:700}.video-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#101a3a;box-shadow:0 12px 34px rgba(16,26,58,.10)}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.chip-video{background:#fff0f0;color:#c62828;border-color:#ffd1d1}

/* Ad-ready reserved areas. Replace the placeholder slot IDs in site.js with your real AdSense slot IDs when available. */
.ad-space{display:flex;align-items:center;justify-content:center;min-height:120px;margin:26px auto;padding:8px 16px;max-width:970px;border:1px dashed rgba(16,26,58,.12);border-radius:12px;background:rgba(16,26,58,.018);box-sizing:border-box}.ad-space span{font-size:.72rem;color:var(--muted);letter-spacing:.03em}.ad-space.tall{min-height:250px}
@media(max-width:700px){.post-video{padding:0 16px}.post-video-head{align-items:flex-start;flex-direction:column;gap:5px}.ad-space{min-height:100px;margin:20px auto}.ad-space.tall{min-height:180px}}

/* Blog cards with YouTube thumbnails */
.post-card .cv.has-video-thumb{position:relative;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;overflow:hidden}
.post-card .cv.has-video-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,26,58,.02),rgba(16,26,58,.28))}
.card-play{position:relative;z-index:1;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#c62828;font-weight:800;font-size:1.15rem;box-shadow:0 8px 24px rgba(16,26,58,.24);padding-left:3px}
.write-video-preview{margin:8px 0 4px;border:1px solid var(--line);border-radius:14px;padding:10px;background:var(--card)}
.write-video-thumb{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#101a3a}
.write-video-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.write-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#c62828;font-weight:800;font-size:1.15rem;padding-left:3px;box-shadow:0 8px 24px rgba(16,26,58,.24)}
.schedule-tag{display:inline-block;background:#e9eefc;color:#173bc2;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:99px;margin-left:8px}

/* Blog cards with YouTube thumbnails */
.post-card .cv.has-video-thumb{position:relative;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;overflow:hidden}
.post-card .cv.has-video-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,26,58,.02),rgba(16,26,58,.28))}
.card-play{position:relative;z-index:1;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#c62828;font-weight:800;font-size:1.15rem;box-shadow:0 8px 24px rgba(16,26,58,.24);padding-left:3px}
.write-video-preview{margin:8px 0 4px;border:1px solid var(--line);border-radius:14px;padding:10px;background:var(--card)}
.write-video-thumb{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#101a3a}
.write-video-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.write-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#c62828;font-weight:800;font-size:1.15rem;padding-left:3px;box-shadow:0 8px 24px rgba(16,26,58,.24)}
.schedule-tag{display:inline-block;background:#e9eefc;color:#173bc2;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:99px;margin-left:8px}
