/*
Theme Name: Olive Student Community
Theme URI: https://olive.ng/
Author: Olive.ng
Description: Student-first WordPress community theme with blog access, forum topics, student accounts, responsive navigation, search and light/dark mode.
Version: 2.4.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: olive-student
*/
:root{--primary:#1261ff;--primary-dark:#0b43b3;--accent:#8aa62b;--violet:#7c3aed;--primary-soft:#eef4ff;--bg:#f5f7fb;--card:#fff;--text:#172033;--muted:#667085;--border:#e5e7eb;--soft:#eef4ff;--shadow:0 8px 25px rgba(16,24,40,.07)}
body.olive-dark{--bg:#0b1120;--card:#111827;--text:#f3f4f6;--muted:#aab4c5;--border:#263244;--soft:#172554;--shadow:0 8px 25px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}.container{width:min(1180px,92%);margin:auto}
.topbar{position:sticky;top:0;z-index:50;background:var(--card);border-bottom:1px solid var(--border)}.header{min-height:72px;display:flex;align-items:center;gap:20px}.logo{font-size:23px;font-weight:900;color:var(--primary);white-space:nowrap;background:linear-gradient(90deg,#1261ff 0%,#7c3aed 52%,#8aa62b 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.logo span{color:var(--text)}.nav{display:flex;align-items:center;gap:19px;flex:1}.nav a{font-size:14px;font-weight:750;color:var(--muted)}.nav a:hover{color:var(--primary)}.date{font-size:12px;color:var(--muted);white-space:nowrap}.auth,.header-tools{display:flex;align-items:center;gap:7px}.btn,.icon-btn{border-radius:10px;cursor:pointer;font-weight:800}.btn{border:0;padding:10px 15px}.btn-primary{background:linear-gradient(110deg,#1261ff 0%,#7c3aed 52%,#8aa62b 100%);color:#fff;box-shadow:0 6px 16px rgba(18,97,255,.18)}.btn-outline{background:var(--card);border:1px solid var(--border);color:var(--text)}.icon-btn{width:40px;height:40px;border:1px solid var(--border);background:var(--card);color:var(--text);display:grid;place-items:center}.menu-btn{display:none;border:0;background:none;color:var(--text);font-size:25px}
.hero{padding:24px 0 10px}.hero-card{background:linear-gradient(120deg,#0b43b3 0%,#1261ff 43%,#7c3aed 72%,#8aa62b 100%);border-radius:18px;padding:34px;color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:20px;align-items:center;box-shadow:var(--shadow)}.hero h1{font-size:38px;line-height:1.08;margin:8px 0 12px}.hero p{max-width:650px;color:#e8efff}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.btn-light{background:#fff;color:#1149b8}.hero-visual{border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);border-radius:18px;padding:18px;display:grid;gap:10px}.stat{display:flex;justify-content:space-between;padding:12px 14px;background:rgba(255,255,255,.12);border-radius:10px}
.section{padding:22px 0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:13px}.section-head h2{margin:0;font-size:22px}.section-head small{color:var(--muted)}.grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}
.latest-posts{display:flex;flex-direction:column;gap:12px}.post-horizontal{display:grid;grid-template-columns:190px 1fr;min-height:135px;overflow:hidden}.thumb{height:100%;min-height:135px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);display:flex;align-items:center;justify-content:center;color:#155eef;font-size:25px;font-weight:900;padding:12px;text-align:center}.post-body{padding:15px 17px}.tag{display:inline-block;background:var(--soft);color:var(--primary);font-size:11px;font-weight:800;padding:5px 8px;border-radius:999px}.post-title{font-size:17px;font-weight:850;margin:8px 0 6px;line-height:1.3}.excerpt{font-size:13px;line-height:1.55;color:var(--muted)}.meta{font-size:11px;color:#98a2b3;margin-top:10px}
.pagination{display:flex;justify-content:center;align-items:center;gap:7px;margin:17px 0 4px}.pagination a,.pagination span{min-width:36px;height:36px;padding:0 10px;border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:9px;display:grid;place-items:center;font-size:12px;font-weight:800}.pagination .current{background:linear-gradient(110deg,#1261ff,#7c3aed,#8aa62b);color:#fff;border-color:transparent}.pagination-info{text-align:center;color:var(--muted);font-size:11px;margin-top:7px}
.side-list,.forum-list,.school-list{padding:8px 14px}.side-item,.school{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.side-item:last-child,.school:last-child{border-bottom:0}.avatar,.school-icon{width:40px;height:40px;border-radius:50%;background:#e0eaff;color:var(--primary);display:grid;place-items:center;font-weight:900;flex:none}.side-item strong{font-size:13px}.side-item p{font-size:11px;color:var(--muted);margin:4px 0 0}.forum-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.topic{padding:15px 0;border-bottom:1px solid var(--border)}.topic:last-child{border-bottom:0}.topic-top{display:flex;justify-content:space-between;gap:10px}.topic h3{font-size:15px;margin:0 0 6px}.topic p{font-size:12px;color:var(--muted);margin:0}.topic-stats{font-size:11px;color:#98a2b3;white-space:nowrap}.school-icon{border-radius:10px;background:#ecfdf3;color:#15803d}.school .meta{margin-top:1px}
.tools-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.tool-card{padding:17px}.tool-card .post-title{font-size:15px}.cta{margin:20px 0 30px;background:#111827;color:#fff;border-radius:16px;padding:25px;display:flex;justify-content:space-between;align-items:center;gap:20px}.cta h2{margin:0 0 5px;font-size:22px}.cta p{margin:0;color:#cbd5e1;font-size:13px}footer{background:#0b1220;color:#aab4c5;padding:25px 0;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:15px}
.modal,.search-overlay{display:none;position:fixed;inset:0;background:rgba(2,6,23,.65);z-index:100;align-items:center;justify-content:center;padding:20px}.modal.show,.search-overlay.show{display:flex}.modal-box,.search-box{background:var(--card);color:var(--text);border-radius:16px;width:min(430px,100%);padding:25px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.25)}.close{position:absolute;right:15px;top:12px;border:0;background:none;color:var(--muted);font-size:24px;cursor:pointer}.modal h2{margin:0 0 6px}.modal p{color:var(--muted);font-size:13px}.form-group{margin:13px 0}.form-group label{display:block;font-size:12px;font-weight:800;margin-bottom:6px}.form-group input,.form-group textarea,.form-group select{width:100%;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:9px;padding:11px;outline:none}.full{width:100%}.switch{text-align:center;margin-top:13px;color:var(--muted);font-size:12px}.switch a{color:var(--primary);font-weight:800}.search-box{width:min(650px,100%)}.search-row{display:flex;gap:8px}.search-row input{flex:1;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;padding:13px}.search-hint{font-size:12px;color:var(--muted);margin-top:10px}
.entry-header{padding:25px 0 10px}.entry-title{font-size:34px;line-height:1.15;margin:0 0 8px}.entry-meta{color:var(--muted);font-size:12px}.content-wrap{display:grid;grid-template-columns:2fr 1fr;gap:25px}.content-area{min-width:0}.entry-content{font-size:16px;line-height:1.8}.entry-content h2,.entry-content h3{line-height:1.3}.entry-content img{border-radius:12px}.comments-area{margin-top:30px}.comment-list{padding-left:0;list-style:none}.comment{padding:14px 0;border-bottom:1px solid var(--border)}.comment-author{font-weight:800}.comment-meta{font-size:11px;color:var(--muted)}.comment-content{font-size:14px}
.profile-card{padding:25px}.profile-head{display:flex;gap:15px;align-items:center}.profile-avatar{width:76px;height:76px;border-radius:50%;background:#dbeafe;color:var(--primary);display:grid;place-items:center;font-size:26px;font-weight:900}.profile-stats{display:flex;gap:18px;margin-top:15px;color:var(--muted);font-size:13px}
.bottom-nav{display:none}
@media(max-width:800px){body{padding-bottom:78px}.header{min-height:62px;gap:9px}.menu-btn{display:block}.nav,.date{display:none}.header-tools{margin-left:auto}.auth .btn-outline{display:none}.hero-card{grid-template-columns:1fr;padding:25px}.hero h1{font-size:30px}.hero-visual{display:none}.grid,.forum-grid,.content-wrap{grid-template-columns:1fr}.post-horizontal{grid-template-columns:115px 1fr;min-height:115px}.post-horizontal .thumb{min-height:115px;font-size:17px}.post-horizontal .post-body{padding:11px}.post-horizontal .post-title{font-size:14px}.post-horizontal .excerpt{font-size:11px}.tools-grid{grid-template-columns:repeat(2,1fr)}.cta{display:block}.cta .btn{margin-top:15px}.footer-inner{display:block}.bottom-nav{display:flex;position:fixed;left:50%;right:auto;bottom:calc(8px + env(safe-area-inset-bottom));transform:translate3d(-50%,0,0);width:min(380px,calc(100vw - 28px));height:60px;padding:5px;background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.9);border-radius:24px;box-shadow:0 14px 38px rgba(16,24,40,.20);z-index:999;align-items:center;justify-content:center;gap:3px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}body.olive-dark .bottom-nav{background:rgba(15,23,42,.97);border-color:rgba(255,255,255,.08)}.bottom-nav a,.bottom-nav button{flex:1;max-width:92px;height:50px;border:0;background:none;color:var(--muted);border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px;font-weight:850;cursor:pointer;position:relative}.bottom-nav a.active,.bottom-nav button.active{background:linear-gradient(135deg,rgba(18,97,255,.10),rgba(124,58,237,.10),rgba(138,166,43,.12));color:var(--primary)}.bottom-icon{font-size:19px;line-height:20px}.bottom-nav .post-btn{overflow:visible}.bottom-nav .post-btn .bottom-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#1261ff 0%,#7c3aed 52%,#8aa62b 100%);color:transparent;font-size:0;line-height:1;margin-top:-12px;border:4px solid var(--bg);box-shadow:0 6px 16px rgba(18,97,255,.30);transform:translateY(-1px);position:relative}.bottom-nav .post-btn .bottom-icon:before,.bottom-nav .post-btn .bottom-icon:after{content:"";position:absolute;background:#fff;border-radius:3px}.bottom-nav .post-btn .bottom-icon:before{width:18px;height:3px}.bottom-nav .post-btn .bottom-icon:after{width:3px;height:18px}.bottom-nav .post-btn span:last-child{margin-top:-1px}.bottom-nav .post-btn.active{background:transparent;color:var(--primary)} }

/* Forum composer */
#olive-post-form select,#olive-post-form input[type="file"]{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);font:inherit}
#olive-post-form input[type="file"]{padding:9px}
.file-hint{font-size:11px;color:var(--muted);margin-top:5px}

/* Forum discussion cards */
.forum-topic-item{display:flex;gap:16px;padding:18px 20px;border-bottom:1px solid var(--border,#e5e7eb);align-items:flex-start}.forum-topic-item:last-child{border-bottom:0}.forum-topic-thumb{display:block;width:105px;height:78px;flex:0 0 105px;border-radius:12px;overflow:hidden;background:#eef2f0}.forum-topic-thumb img{width:100%;height:100%;object-fit:cover}.forum-topic-content{min-width:0;flex:1}.forum-topic-content h3{margin:0}.forum-topic-excerpt{margin:8px 0;color:#667085;font-size:14px;line-height:1.55}.forum-cat{font-weight:600}.forum-view-all{text-align:center;margin-top:16px}
@media(max-width:640px){.forum-topic-item{padding:15px;gap:12px}.forum-topic-thumb{width:82px;height:68px;flex-basis:82px}.forum-topic-excerpt{display:none}.forum-topic-content h3{font-size:15px}.forum-topic-content p{font-size:12px}}

/* Three-color Olive identity accents */
.tag{background:linear-gradient(135deg,rgba(18,97,255,.10),rgba(124,58,237,.10),rgba(138,166,43,.14));}
.forum-topic-item:hover{background:linear-gradient(90deg,rgba(18,97,255,.025),rgba(124,58,237,.025),rgba(138,166,43,.035));}
.single-forum .entry-title{background:linear-gradient(90deg,#1261ff,#7c3aed,#8aa62b);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
@media(max-width:430px){.bottom-nav{width:min(370px,calc(100vw - 24px));height:60px;border-radius:21px}.bottom-nav a,.bottom-nav button{max-width:none}.bottom-nav .post-btn .bottom-icon{width:40px;height:40px;font-size:23px}}

/* v7 mobile refinement: comment form + bottom navigation */
@media(max-width:800px){
  body{padding-bottom:104px}
  .comments-area{margin-top:26px;padding-bottom:8px}
  .comments-area .comment-form{margin-top:18px}
  .comments-area .comment-form p{margin:0 0 14px}
  .comments-area .comment-form label{display:block;font-size:15px;font-weight:700;margin:0 0 6px}
  .comments-area .comment-form textarea,
  .comments-area .comment-form input[type="text"],
  .comments-area .comment-form input[type="email"],
  .comments-area .comment-form input[type="url"]{
    display:block;width:100%;max-width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#172033;padding:11px 12px;outline:none;
  }
  .comments-area .comment-form textarea{height:130px;min-height:130px;max-height:190px;resize:vertical;line-height:1.5}
  .comments-area .comment-form input[type="text"],
  .comments-area .comment-form input[type="email"],
  .comments-area .comment-form input[type="url"]{height:44px}
  .comments-area .comment-form textarea:focus,
  .comments-area .comment-form input:focus{border-color:#1261ff;box-shadow:0 0 0 3px rgba(18,97,255,.10)}
  .comments-area .comment-form .comment-form-cookies-consent{display:flex;align-items:flex-start;gap:8px;margin-top:4px}
  .comments-area .comment-form .comment-form-cookies-consent input{width:18px;height:18px;flex:0 0 auto;margin:3px 0 0}
  .comments-area .comment-form .comment-form-cookies-consent label{font-size:13px;font-weight:500;line-height:1.45;margin:0}
  .comments-area .comment-form .form-submit{margin-top:16px}
  .comments-area .comment-form .submit{border:0;border-radius:12px;padding:12px 20px;color:#fff;font-weight:800;background:linear-gradient(135deg,#1261ff 0%,#7c3aed 52%,#8aa62b 100%);box-shadow:0 8px 20px rgba(18,97,255,.18);cursor:pointer}

  .bottom-nav{bottom:calc(12px + env(safe-area-inset-bottom));width:min(360px,calc(100vw - 40px));height:58px;padding:4px;border-radius:20px;gap:2px}
  .bottom-nav a,.bottom-nav button{height:49px;max-width:none;font-size:10px;border-radius:15px;gap:1px}
  .bottom-icon{font-size:18px;line-height:18px}
  .bottom-nav .post-btn .bottom-icon{width:38px;height:38px;margin-top:-9px;border-width:3px;box-shadow:0 5px 14px rgba(18,97,255,.25)}
  .bottom-nav .post-btn .bottom-icon:before{width:17px;height:3px}
  .bottom-nav .post-btn .bottom-icon:after{width:3px;height:17px}
}
@media(max-width:430px){
  .bottom-nav{width:min(350px,calc(100vw - 36px));height:58px;border-radius:20px}
  .bottom-nav .post-btn .bottom-icon{width:38px;height:38px}
}

/* v8: force fresh mobile forum/comment styling */
@media (max-width:800px){
  #commentform.comment-form{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
  }
  #commentform.comment-form > p{
    display:block !important;
    width:100% !important;
    margin:0 0 14px !important;
  }
  #commentform.comment-form label{
    display:block !important;
    width:100% !important;
    margin:0 0 6px !important;
  }
  #commentform.comment-form textarea#comment{
    display:block !important;
    width:100% !important;
    height:125px !important;
    min-height:125px !important;
    max-height:160px !important;
    box-sizing:border-box !important;
    resize:vertical !important;
  }
  #commentform.comment-form input#author,
  #commentform.comment-form input#email,
  #commentform.comment-form input#url{
    display:block !important;
    width:100% !important;
    height:44px !important;
    box-sizing:border-box !important;
  }
  #commentform.comment-form .comment-form-cookies-consent{
    display:flex !important;
    align-items:flex-start !important;
    width:100% !important;
  }
  #commentform.comment-form .form-submit{
    display:block !important;
    width:100% !important;
    margin-top:14px !important;
  }
  #commentform.comment-form .form-submit .submit{
    display:inline-flex !important;
    width:auto !important;
    min-height:46px !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .bottom-nav{
    left:50% !important;
    right:auto !important;
    width:min(350px, calc(100vw - 36px)) !important;
    height:58px !important;
    bottom:calc(14px + env(safe-area-inset-bottom)) !important;
    transform:translate3d(-50%,0,0) !important;
    margin:0 !important;
    padding:4px !important;
  }
  .bottom-nav a,.bottom-nav button{
    flex:1 1 0 !important;
    width:auto !important;
    max-width:none !important;
  }
  .bottom-nav .post-btn .bottom-icon{
    width:38px !important;
    height:38px !important;
    margin-top:-8px !important;
  }
}

/* Single post meta/category fix */
.entry-meta a{color:inherit;text-decoration:none}.single-category{display:inline-block;font-weight:800;color:#1261ff;background:rgba(18,97,255,.09);padding:5px 10px;border-radius:999px}.single-forum .entry-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}

/* Layer 2 + 3: community interaction and student profiles */
.olive-like,.olive-love{border:1px solid var(--border);background:var(--card);color:var(--muted);border-radius:999px;padding:7px 12px;font-weight:800;cursor:pointer;transition:.18s ease;min-width:58px}.olive-like:hover,.olive-love:hover{transform:translateY(-1px);border-color:#b9c7e8}.olive-like.active,.olive-love.active{color:#fff;border-color:transparent;background:linear-gradient(135deg,#1261ff,#7c3aed,#8aa62b);box-shadow:0 6px 16px rgba(18,97,255,.18)}.olive-love.active{background:linear-gradient(135deg,#ff4d6d,#7c3aed,#8aa62b)}
.forum-card-actions{margin-top:8px}.forum-pinned{font-weight:800;color:#7c3aed}.forum-single-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}.forum-actions{display:flex;gap:7px;flex-wrap:wrap}.btn-small{padding:7px 11px;font-size:11px}.btn-small.active{background:linear-gradient(135deg,#1261ff,#7c3aed,#8aa62b);color:#fff;border-color:transparent}.edit-box{display:none;padding:18px;margin:15px 0}.edit-box.show{display:block}.edit-box label,.profile-edit-box label{display:block;font-weight:800;font-size:13px;margin:12px 0 6px}.edit-box input,.edit-box textarea,.profile-edit-box input,.profile-edit-box textarea{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:10px;padding:11px;background:var(--card);color:var(--text);font:inherit}.profile-avatar-wrap{flex:none}.profile-avatar-img{width:76px;height:76px;border-radius:50%;object-fit:cover;display:block}.profile-bio{margin-top:18px;line-height:1.6;color:var(--muted)}.profile-details{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.profile-details span{background:var(--bg);border:1px solid var(--border);padding:8px 11px;border-radius:10px;font-size:12px}.profile-edit-box{border-top:1px solid var(--border);margin-top:22px;padding-top:18px}.profile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.profile-edit-box .btn{margin-top:12px}
@media(max-width:640px){.profile-grid{grid-template-columns:1fr}.forum-single-toolbar{align-items:flex-start}.forum-actions{width:100%}.forum-actions .btn{font-size:11px}}

/* v30: keep the mobile composer above the floating bottom navigation */
.modal{z-index:1100}
.search-overlay{z-index:1100}

/* v11: forum post modal must fit inside the viewport */
.modal{
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  align-items:center;
}
.modal-box{
  width:min(560px,100%);
  max-height:calc(100dvh - 32px);
  overflow-y:auto;
  overscroll-behavior:contain;
  box-sizing:border-box;
  padding-bottom:28px;
}
#olive-post-form .form-group{margin:12px 0}
#olive-post-form textarea{min-height:150px;resize:vertical}
#olive-post-submit{
  display:block;
  width:100%;
  min-height:46px;
  margin-top:16px;
  position:relative;
  z-index:2;
}
@media(max-width:800px){
  .modal{padding:10px;align-items:flex-start;}
  .modal-box{
    width:100%;
    max-height:calc(100dvh - 20px);
    margin:auto 0;
    border-radius:16px;
    padding:22px 18px 24px;
  }
  #olive-post-form textarea{min-height:120px}
  #olive-post-submit{min-height:48px;margin-bottom:2px}
}
@media(max-width:480px){
  .modal-box{padding:20px 15px 22px}
  #olive-post-form .form-group{margin:10px 0}
  #olive-post-form .form-group input,
  #olive-post-form .form-group textarea,
  #olive-post-form .form-group select{padding:10px}
}

/* Final responsive post thumbnails and forum presentation */
.thumb{overflow:hidden;padding:0}
.thumb img{display:block;width:100%;height:100%;object-fit:cover}
.forum-topic-thumb{flex-shrink:0}
@media(max-width:800px){
  .post-horizontal{grid-template-columns:105px minmax(0,1fr);min-height:105px}
  .post-horizontal .thumb{width:105px;min-height:105px}
  .post-horizontal .post-body{padding:10px 12px}
  .post-horizontal .post-title{font-size:14px;line-height:1.28;margin:6px 0 5px}
  .post-horizontal .excerpt{font-size:11px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .post-horizontal .meta{font-size:10px;margin-top:6px}
}
@media(max-width:390px){
  .post-horizontal{grid-template-columns:96px minmax(0,1fr);min-height:96px}
  .post-horizontal .thumb{width:96px;min-height:96px}
  .post-horizontal .post-body{padding:9px 10px}
  .post-horizontal .post-title{font-size:13px}
  .post-horizontal .excerpt{font-size:10.5px;-webkit-line-clamp:2}
}


/* v15: cleaner homepage cards and reliable forum listing */
.post-horizontal{align-items:stretch}
.post-horizontal .thumb{overflow:hidden}
.post-horizontal .thumb img{display:block;width:100%;height:100%;object-fit:cover}
.post-horizontal .post-body{min-width:0}
.post-horizontal .excerpt{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;-webkit-line-clamp:3}
@media(max-width:800px){
  .latest-posts{gap:10px}
  .post-horizontal{grid-template-columns:92px minmax(0,1fr);min-height:92px}
  .post-horizontal .thumb{width:92px;min-height:92px;height:100%;padding:0}
  .post-horizontal .post-body{padding:10px 11px}
  .post-horizontal .tag{font-size:10px;padding:4px 7px}
  .post-horizontal .post-title{font-size:13px;line-height:1.28;margin:5px 0 4px}
  .post-horizontal .excerpt{font-size:10.5px;line-height:1.42;-webkit-line-clamp:2;margin:0}
}
@media(max-width:380px){
  .post-horizontal{grid-template-columns:84px minmax(0,1fr);min-height:84px}
  .post-horizontal .thumb{width:84px;min-height:84px}
  .post-horizontal .post-body{padding:9px 10px}
  .post-horizontal .post-title{font-size:12.5px}
}


/* v17: consistent forum reactions on cards and single discussion pages */
.forum-single-toolbar .olive-reaction{border:1px solid var(--border);background:var(--card);color:var(--muted);border-radius:999px;padding:9px 14px;font-weight:800;cursor:pointer;transition:.18s ease}.forum-single-toolbar .olive-reaction:hover{transform:translateY(-1px);border-color:#b9c7e8}.forum-single-toolbar .olive-reaction.active{color:#fff;border-color:transparent;background:linear-gradient(135deg,#1261ff,#7c3aed,#8aa62b);box-shadow:0 6px 16px rgba(18,97,255,.18)}.forum-single-toolbar .olive-love.active{background:linear-gradient(135deg,#ff4d6d,#7c3aed,#8aa62b)}


/* v18: robust forum reaction interaction */
.olive-reaction{position:relative;user-select:none;-webkit-tap-highlight-color:transparent}
.olive-reaction.is-loading{opacity:.6;pointer-events:none;transform:none!important}
.forum-card-actions .olive-reaction{margin-right:5px}
.forum-card-actions .olive-reaction.active{color:#fff;border-color:transparent;background:linear-gradient(135deg,#1261ff,#7c3aed,#8aa62b);box-shadow:0 5px 14px rgba(18,97,255,.16)}
.forum-card-actions .olive-love.active{background:linear-gradient(135deg,#ff4d6d,#7c3aed,#8aa62b)}


/* v20: professional spacing between forum discussions */
.forum-topic-item{
  margin:0 14px 12px;
  padding:16px 18px;
  border:1px solid var(--border,#e5e7eb);
  border-radius:16px;
  background:var(--card);
  box-shadow:0 3px 12px rgba(16,24,40,.05);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.forum-topic-item:last-child{margin-bottom:14px}
.forum-topic-item:hover{
  transform:translateY(-1px);
  border-color:rgba(124,58,237,.18);
  box-shadow:0 8px 22px rgba(16,24,40,.08);
}
@media(max-width:640px){
  .forum-topic-item{
    margin:0 8px 10px;
    padding:13px;
    border-radius:14px;
    gap:12px;
  }
  .forum-topic-item:last-child{margin-bottom:12px}
}

/* v21: refined spacing for community sidebars and discussion lists */
.side-list{
  padding:10px 14px;
}
.side-list .side-item{
  margin:0 0 10px;
  padding:12px 10px;
  border:1px solid var(--border,#e5e7eb);
  border-radius:13px;
  background:var(--card);
}
.side-list .side-item:last-child{margin-bottom:0}

/* Trending discussions: give every discussion its own breathing room */
.forum-list .topic{
  margin:0 0 10px;
  padding:13px 14px;
  border:1px solid var(--border,#e5e7eb);
  border-radius:13px;
  background:var(--card);
}
.forum-list .topic:last-child{margin-bottom:0}

/* Popular schools: separate each school cleanly */
.school-list{
  padding:10px 14px;
}
.school-list .school{
  margin:0 0 10px;
  padding:12px 10px;
  border:1px solid var(--border,#e5e7eb);
  border-radius:13px;
  background:var(--card);
}
.school-list .school:last-child{margin-bottom:0}

/* Student Forum: remove the large outer box; keep individual discussion cards */
#forum .forum-list{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
#forum .forum-topic-item{
  margin-left:0;
  margin-right:0;
}

@media(max-width:640px){
  .side-list{padding:8px 10px}
  .side-list .side-item{margin-bottom:8px;padding:10px 9px}
  .forum-list .topic{margin-bottom:8px;padding:12px}
  .school-list{padding:8px 10px}
  .school-list .school{margin-bottom:8px;padding:10px 9px}
}


/* v22: cleaner trending section + working header search */
#home > .section:first-of-type .forum-list{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
#home > .section:first-of-type .forum-list .topic{
  margin-left:0;
  margin-right:0;
}
@media(max-width:640px){
  #home > .section:first-of-type .forum-list .topic{
    margin-bottom:10px;
  }
}


/* v23: remove the outer white panel from Trending Discussions */
.trending-section .forum-list{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.trending-section .forum-list .topic{
  background:var(--card);
}

/* v24: remove outer white panels while keeping individual item cards */
.side-list,
.school-list{
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.side-list .side-item,
.school-list .school{
  background:var(--card);
}

/* Keep comfortable separation between standalone items */
.side-list .side-item{margin-bottom:12px}
.side-list .side-item:last-child{margin-bottom:0}
.school-list .school{margin-bottom:12px}
.school-list .school:last-child{margin-bottom:0}

/* Trending already uses individual cards; ensure no parent panel returns */
.trending-section .forum-list{
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

@media(max-width:640px){
  .side-list .side-item{margin-bottom:10px}
  .school-list .school{margin-bottom:10px}
}

/* v25: student profiles, school communities, forum UX and opportunities */
.author-link,.school-tag{color:var(--primary);font-weight:750}.author-link:hover,.school-tag:hover{text-decoration:underline}
.profile-topic-list{display:flex;flex-direction:column;gap:10px}.profile-topic{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;background:var(--card);border:1px solid var(--border);border-radius:13px;box-shadow:0 3px 12px rgba(16,24,40,.04)}.profile-topic strong{display:block;font-size:14px}.profile-topic span{display:block;color:var(--muted);font-size:11px;margin-top:4px}.profile-topic>span{font-size:18px;margin:0;color:var(--primary)}
.community-intro{padding:16px 18px;margin-bottom:16px}.community-intro p{margin:0;color:var(--muted)}.community-link{margin-top:12px}.community-link .btn{width:100%;text-align:center}.school-list .school{transition:transform .18s ease,box-shadow .18s ease}.school-list .school:hover,.side-list .side-item:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(16,24,40,.06)}
.opportunity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.opportunity-card{display:block;padding:18px;transition:transform .18s ease,box-shadow .18s ease}.opportunity-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(16,24,40,.10)}.opportunity-card h2,.opportunity-card h3{margin:10px 0 6px;font-size:17px;line-height:1.3}.opportunity-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.opportunity-more{display:inline-block;margin-top:13px;color:var(--primary);font-size:12px;font-weight:850}.opportunity-empty{padding:20px}.opportunity-empty p{color:var(--muted)}.opportunity-single-label{display:inline-block;padding:7px 10px;border-radius:999px;background:var(--soft);color:var(--primary);font-size:11px;font-weight:850;margin-bottom:16px}.opportunity-actions{margin-top:25px;padding-top:18px;border-top:1px solid var(--border)}
.comment-login-note{margin-top:18px;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--card)}.comment-login-note strong{font-size:15px}.comment-login-note p{margin:5px 0 12px;color:var(--muted);font-size:13px}.related-forum{margin-top:30px}.related-forum h2{margin-bottom:12px}.single-category{font-weight:800;color:var(--primary)}
@media(max-width:800px){.opportunity-grid{grid-template-columns:1fr}.profile-topic{padding:13px}.profile-topic strong{font-size:13px}.community-link .btn{font-size:12px}.opportunity-card{padding:16px}}


/* v27: student identity, dashboard, follows, reputation and badges */
.profile-head{justify-content:space-between;flex-wrap:wrap}.profile-actions{margin-left:auto}.profile-stats{flex-wrap:wrap}.profile-badges{margin-top:22px}.profile-badges h3{font-size:15px;margin:0 0 10px}.profile-badge{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid var(--border);background:var(--bg);border-radius:999px;font-size:12px;font-weight:800;margin:0 7px 7px 0}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}.dashboard-card{padding:17px;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 4px 16px rgba(16,24,40,.04)}.dashboard-card strong{display:block;font-size:22px}.dashboard-card span{display:block;color:var(--muted);font-size:11px;margin-top:4px}.olive-follow-user{min-width:120px}.side-item .avatar{overflow:hidden}.side-item .avatar img{width:100%;height:100%;object-fit:cover}@media(max-width:800px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.profile-actions{width:100%;margin-left:0}.profile-actions .btn{width:100%}}@media(max-width:420px){.dashboard-grid{grid-template-columns:1fr 1fr;gap:9px}.dashboard-card{padding:13px}.dashboard-card strong{font-size:19px}}

/* v28: reward display */
.reward-card strong{font-size:24px}.reward-note{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.6}


/* v29: reward withdrawal system */
.reward-panel{margin-top:24px;padding:22px;border:1px solid var(--border);border-radius:20px;background:var(--card);box-shadow:0 10px 28px rgba(20,30,60,.06)}
.reward-panel-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reward-grid label{display:block;font-weight:700;font-size:12px;margin-bottom:6px}.reward-grid input,.withdraw-row input{width:100%;box-sizing:border-box}.withdraw-box{margin-top:18px;padding:18px;border-radius:16px;background:rgba(18,97,255,.045);border:1px solid var(--border)}.withdraw-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin:10px 0}.reward-transactions{display:grid;gap:10px}.reward-transaction{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--card)}.reward-transaction div{display:flex;flex-direction:column;gap:3px}.reward-transaction strong{font-size:17px}.reward-transaction span{font-size:12px;color:var(--muted)}.reward-status{display:inline-flex!important;padding:6px 9px;border-radius:999px;font-weight:700;font-size:11px!important}.reward-status-pending{background:#fff7df;color:#9a6700}.reward-status-approved{background:#e8f8ee;color:#16703b}.reward-status-rejected{background:#fff0f0;color:#a22}
@media(max-width:700px){.reward-grid{grid-template-columns:1fr}.withdraw-row{grid-template-columns:1fr}.reward-panel{padding:16px}.reward-panel-head{align-items:flex-start}.reward-transaction{padding:12px}}

/* v31: notifications and advanced forum */
.notification-btn{position:relative;font-size:15px}.notification-count{position:absolute;right:-3px;top:-4px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:9px;font-weight:900;display:grid;place-items:center;border:2px solid var(--card)}
.notification-panel{display:none;position:absolute;right:0;top:48px;width:min(390px,calc(100vw - 28px));background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.18);overflow:hidden;z-index:1200}.notification-panel.show{display:block}.notification-head{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;border-bottom:1px solid var(--border)}.notification-head button{border:0;background:none;color:var(--primary);font-weight:800;font-size:11px;cursor:pointer}.notification-list{max-height:420px;overflow:auto}.notification-item{display:flex;gap:10px;padding:12px 14px;text-decoration:none;color:var(--text);border-bottom:1px solid var(--border)}.notification-item:hover{background:var(--bg)}.notification-item.unread{background:rgba(18,97,255,.055)}.notification-item strong{display:block;font-size:12px;line-height:1.45}.notification-item small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.notification-dot{width:8px;height:8px;border-radius:50%;background:transparent;flex:none;margin-top:5px}.notification-item.unread .notification-dot{background:#1261ff}.notification-empty{padding:25px;text-align:center;color:var(--muted);font-size:12px}
.olive-comment-head{display:flex;align-items:center;gap:10px}.olive-comment-head img{border-radius:50%}.best-answer-badge{margin-left:auto;background:#e8f8ee;color:#16703b;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900}.olive-comment-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.olive-comment-actions .comment-reply-link{font-size:11px;font-weight:800;color:var(--primary);border:1px solid var(--border);padding:6px 9px;border-radius:999px;text-decoration:none}.olive-comment-edit-box{margin-top:10px}.olive-comment-edit-box textarea{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);padding:10px;min-height:90px}.email-pref{display:flex!important;gap:8px;align-items:flex-start;font-size:12px!important;font-weight:600!important;margin-top:14px!important}.email-pref input{width:17px!important;height:17px!important;margin:0!important;flex:none}.olive-follow-topic.active,.olive-save-topic.active{background:linear-gradient(135deg,#1261ff,#7c3aed,#8aa62b);color:#fff;border-color:transparent}
@media(max-width:800px){.notification-panel{position:fixed;right:14px;top:70px;width:min(390px,calc(100vw - 28px))}.notification-head{padding:12px}.notification-item{padding:11px 12px}.best-answer-badge{margin-left:0}.olive-comment-head{align-items:flex-start}}


/* v32: Student Resources hub */
.resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.resource-card{display:block;overflow:hidden;text-decoration:none;color:var(--text);transition:transform .18s ease,box-shadow .18s ease}.resource-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(16,24,40,.10)}.resource-thumb{height:135px;background:var(--soft);overflow:hidden}.resource-thumb img{width:100%;height:100%;display:block;object-fit:cover}.resource-card-body{padding:15px}.resource-card h2,.resource-card h3{font-size:16px;line-height:1.35;margin:9px 0 6px}.resource-card p{font-size:12px;line-height:1.55;color:var(--muted);margin:0}.resource-more{display:inline-block;margin-top:12px;color:var(--primary);font-size:11px;font-weight:850}.resource-filter{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.resource-filter-link{display:inline-flex;padding:8px 11px;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--muted);font-size:11px;font-weight:800;text-decoration:none}.resource-filter-link:hover,.resource-filter-link.active{background:var(--soft);color:var(--primary);border-color:rgba(18,97,255,.20)}.resource-empty{padding:24px;border:1px dashed var(--border);border-radius:16px;background:transparent}.resource-empty p{color:var(--muted);font-size:13px}.resource-featured{margin:-22px -22px 22px;max-height:360px;overflow:hidden}.resource-featured img{width:100%;display:block;object-fit:cover}.resource-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}.resource-discuss{margin-top:20px;padding:18px;border:1px solid var(--border);border-radius:15px;background:var(--soft)}.resource-discuss strong{font-size:14px}.resource-discuss p{margin:5px 0 12px;color:var(--muted);font-size:12px}.resource-home-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){.resource-grid,.resource-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.resource-grid,.resource-home-grid{grid-template-columns:1fr;gap:11px}.resource-thumb{height:150px}.resource-card-body{padding:14px}.resource-filter{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}.resource-filter-link{white-space:nowrap}.resource-featured{margin:-16px -16px 18px}.resource-actions .btn{width:100%;text-align:center}.section-head .btn{white-space:nowrap}}


/* v35: resource category fallback + share button for regular posts */
.single-share-row{margin:0 auto 18px;max-width:1200px;padding:0 22px;display:flex;gap:8px}
@media(max-width:800px){.single-share-row{padding:0 16px;margin-bottom:14px}.single-share-row .btn{width:100%;justify-content:center}}

/* v36: social share menu + related posts */
.olive-share-menu{position:fixed;z-index:99999;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 55px rgba(16,24,40,.22);padding:12px;box-sizing:border-box}.olive-share-menu-head{display:flex;align-items:center;justify-content:space-between;padding:2px 3px 10px;border-bottom:1px solid var(--border);margin-bottom:10px}.olive-share-menu-head strong{font-size:13px}.olive-share-close{border:0;background:var(--soft);color:var(--text);width:28px;height:28px;border-radius:50%;font-size:20px;line-height:1;cursor:pointer}.olive-share-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.olive-share-options a,.olive-share-options button{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--soft);color:var(--text);font-size:11px;font-weight:850;text-decoration:none;cursor:pointer;box-sizing:border-box}.olive-share-options a:hover,.olive-share-options button:hover{background:var(--card);border-color:rgba(18,97,255,.28);color:var(--primary)}
.related-posts{margin-top:30px}.related-posts .section-head{margin-bottom:12px}.related-posts .section-head h2{font-size:20px;margin:0}.related-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.related-post-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:15px;background:var(--card);color:var(--text);text-decoration:none;min-width:0;transition:transform .18s ease,box-shadow .18s ease}.related-post-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(16,24,40,.10)}.related-post-thumb{height:145px;background:var(--soft);overflow:hidden}.related-post-thumb img{width:100%;height:100%;display:block;object-fit:cover}.related-post-body{padding:14px 38px 14px 14px}.related-post-category{display:inline-block;font-size:10px;font-weight:850;color:var(--primary);margin-bottom:6px}.related-post-body h3{font-size:14px;line-height:1.4;margin:0 0 8px}.related-post-meta{font-size:10px;color:var(--muted)}.related-post-arrow{position:absolute;right:13px;bottom:14px;font-size:18px;font-weight:900;color:var(--primary)}
@media(max-width:900px){.related-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.olive-share-menu{position:fixed!important;left:10px!important;right:10px!important;bottom:10px!important;top:auto!important;width:auto!important}.olive-share-options{grid-template-columns:repeat(2,minmax(0,1fr))}.related-post-grid{grid-template-columns:1fr}.related-post-thumb{height:170px}}


/* v37: unified comments for forum discussions and normal blog posts */
.comments-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.comments-heading h2{margin:0}.comments-count-label{font-size:11px;color:var(--muted);font-weight:700}
.comment-list{margin:0}.comment-list .comment{padding:16px 0;border-bottom:1px solid var(--border)}.comment-list .comment-list{margin:10px 0 0 46px;padding-left:16px;border-left:2px solid var(--border)}
.olive-comment-head{display:flex;align-items:center;gap:10px}.olive-comment-head img{width:42px;height:42px;flex:0 0 42px;border-radius:50%;object-fit:cover}.olive-comment-author{min-width:0}.olive-comment-author strong{display:block;font-size:13px;line-height:1.3}.comment-meta{font-size:10px;color:var(--muted);margin-top:2px}.comment-content{font-size:14px;line-height:1.7;margin:10px 0 0;padding-left:52px}.comment-content p{margin:0 0 8px}.comment-content p:last-child{margin-bottom:0}
.olive-comment-actions{padding-left:52px}.olive-comment-actions .comment-reply-link{display:inline-flex;align-items:center;justify-content:center;line-height:1.2;background:var(--card)}
.comments-area .comment-form{margin-top:22px;padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:var(--shadow)}.comments-area .comment-reply-title{margin:0 0 12px;font-size:19px}.comments-area .comment-note{margin:0 0 15px;color:var(--muted);font-size:12px}.comments-area .comment-form p{margin:0 0 13px}.comments-area .comment-form label{display:block;font-size:12px;font-weight:800;margin:0 0 6px}.comments-area .comment-form textarea,.comments-area .comment-form input[type=text],.comments-area .comment-form input[type=email],.comments-area .comment-form input[type=url]{width:100%;max-width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);padding:11px 12px;outline:none}.comments-area .comment-form textarea{min-height:140px;resize:vertical;line-height:1.55}.comments-area .comment-form input[type=text],.comments-area .comment-form input[type=email],.comments-area .comment-form input[type=url]{height:44px}.comments-area .comment-form textarea:focus,.comments-area .comment-form input:focus{border-color:#1261ff;box-shadow:0 0 0 3px rgba(18,97,255,.10)}.comments-area .comment-form .comment-form-cookies-consent{display:flex;align-items:flex-start;gap:8px}.comments-area .comment-form .comment-form-cookies-consent input{width:18px;height:18px;flex:0 0 auto;margin:2px 0 0}.comments-area .comment-form .comment-form-cookies-consent label{font-size:12px;font-weight:500;line-height:1.45;margin:0}.comments-area .comment-form .form-submit{margin:15px 0 0}.comments-area .comment-form .submit{border:0;border-radius:12px;padding:12px 20px;color:#fff;font-weight:800;background:linear-gradient(135deg,#1261ff 0%,#7c3aed 52%,#8aa62b 100%);box-shadow:0 8px 20px rgba(18,97,255,.18);cursor:pointer}.comments-closed-note{margin-top:18px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--card);color:var(--muted);font-size:13px}
@media(max-width:800px){.comments-heading{align-items:flex-start}.comments-heading h2{font-size:20px}.comment-list .comment-list{margin-left:22px;padding-left:11px}.olive-comment-head img{width:38px;height:38px;flex-basis:38px}.comment-content,.olive-comment-actions{padding-left:48px}.comments-area .comment-form{padding:15px;margin-top:18px}.comments-area .comment-form textarea{min-height:125px}.comments-area .comment-form .form-submit .submit{width:100%;min-height:46px}.comments-area .comment-form .comment-form-cookies-consent{width:100%}}

/* v39: professional single-page sidebar for normal posts and forum discussions */
.olive-single-sidebar{display:flex;flex-direction:column;gap:16px;position:sticky;top:18px}.single-side-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:var(--shadow)}.single-side-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 11px}.single-side-title span{font-size:15px;font-weight:900}.single-side-title a{font-size:10px;font-weight:800;color:var(--primary)}.single-side-search-form{display:flex;gap:7px}.single-side-search-form input{min-width:0;flex:1;height:42px;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);padding:0 11px;outline:none}.single-side-search-form input:focus{border-color:#1261ff;box-shadow:0 0 0 3px rgba(18,97,255,.09)}.single-side-search-form button{width:42px;height:42px;border:0;border-radius:10px;background:linear-gradient(135deg,#1261ff 0%,#7c3aed 52%,#8aa62b 100%);color:#fff;font-size:19px;font-weight:900;cursor:pointer}.single-side-links{display:flex;flex-direction:column}.single-side-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);font-size:12px}.single-side-links a:last-child{border-bottom:0;padding-bottom:0}.single-side-links a:first-child{padding-top:2px}.single-side-links a span{min-width:0}.single-side-links a:hover span{color:var(--primary)}.single-side-links b{min-width:25px;height:22px;padding:0 7px;border-radius:999px;background:var(--soft);color:var(--muted);display:grid;place-items:center;font-size:10px}.single-side-posts{display:flex;flex-direction:column}.single-side-posts a{display:block;padding:11px 0;border-bottom:1px solid var(--border)}.single-side-posts a:first-child{padding-top:2px}.single-side-posts a:last-child{border-bottom:0;padding-bottom:0}.single-side-posts strong{display:block;font-size:12px;line-height:1.45}.single-side-posts a:hover strong{color:var(--primary)}.single-side-posts small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.single-side-empty{margin:0;color:var(--muted);font-size:12px}.single-side-cta{background:linear-gradient(145deg,rgba(18,97,255,.08),rgba(124,58,237,.08),rgba(138,166,43,.10));border-color:rgba(18,97,255,.13)}.single-side-kicker{display:inline-block;font-size:9px;letter-spacing:.09em;font-weight:900;color:var(--primary);margin-bottom:6px}.single-side-cta h3{font-size:17px;line-height:1.3;margin:0 0 7px}.single-side-cta p{font-size:11px;line-height:1.6;color:var(--muted);margin:0 0 13px}.single-side-cta .btn{display:inline-flex}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.single-sidebar-column>.card{margin-bottom:16px}.single-sidebar-column>.card:last-child{margin-bottom:0}
@media(max-width:800px){.olive-single-sidebar{position:static;gap:12px;margin-top:22px}.single-side-card{padding:14px;border-radius:14px}.single-side-title span{font-size:14px}.single-side-links a{padding:9px 0}.single-side-posts a{padding:10px 0}.single-side-cta .btn{width:100%;justify-content:center}}


/* v40: automatic forum publishing with 100-word minimum */
.forum-word-count{margin-top:7px;font-size:13px;color:var(--muted);font-weight:600}
.forum-word-count.is-ready{color:#2e7d32}

/* v41: Student Opportunity Engine + School Community 2.0 */
.opportunity-intro-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:14px;margin-bottom:18px}.opportunity-intro{padding:18px}.opportunity-intro p{margin:7px 0 0;color:var(--muted);line-height:1.6}.opportunity-filter{padding:18px}.opportunity-filter-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.opportunity-filter-links a{padding:7px 10px;border:1px solid var(--border);border-radius:999px;font-size:11px;font-weight:800;color:var(--muted)}.opportunity-filter-links a.active,.opportunity-filter-links a:hover{background:var(--soft);color:var(--primary);border-color:transparent}.opportunity-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.opportunity-deadline{font-size:10px;font-weight:850;color:#15803d;background:#ecfdf3;padding:6px 8px;border-radius:999px;white-space:nowrap}.opportunity-deadline.urgent{color:#b45309;background:#fffbeb}.opportunity-deadline.expired{color:#b42318;background:#fef3f2}.opportunity-meta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.opportunity-meta-row span{font-size:11px;color:var(--muted);background:var(--soft);padding:6px 8px;border-radius:8px}.opportunity-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0 0 22px}.opportunity-facts>div{padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--soft)}.opportunity-facts small{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.opportunity-facts strong{display:block;margin-top:5px;font-size:13px;line-height:1.45}.opportunity-facts em{display:inline-block;margin-top:5px;font-style:normal;font-size:10px;font-weight:850;color:#15803d}.opportunity-facts em.urgent{color:#b45309}.opportunity-facts em.expired{color:#b42318}.opportunity-apply-box{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:25px;padding:18px;border-radius:14px;background:var(--soft);border:1px solid var(--border)}.opportunity-apply-box p{margin:4px 0 0;color:var(--muted);font-size:12px}.opportunity-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.community-hero{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px;margin-bottom:18px}.community-hero h2{margin:7px 0 5px}.community-hero p{margin:0;color:var(--muted);line-height:1.6}.community-hero-stats{min-width:130px;text-align:center;padding:15px;border:1px solid var(--border);border-radius:14px;background:var(--soft)}.community-hero-stats strong{display:block;font-size:28px}.community-hero-stats span{font-size:11px;color:var(--muted)}.school-directory-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.school-directory-card{display:flex;align-items:center;gap:14px;padding:17px;transition:transform .18s ease,box-shadow .18s ease}.school-directory-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(16,24,40,.08)}.school-directory-card h2{margin:0 0 5px;font-size:17px}.school-directory-card p{margin:0 0 7px;color:var(--muted);font-size:12px}.school-directory-card span{font-size:11px;font-weight:850;color:var(--primary)}.community-category-links{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0 0 15px}.community-category-links strong{width:100%;font-size:13px;margin-bottom:2px}.community-category-links span{padding:7px 9px;border-radius:999px;background:var(--soft);font-size:10px;font-weight:800;color:var(--muted)}.community-quick-links{display:flex;gap:8px;margin-top:14px}
@media(max-width:800px){.opportunity-intro-grid,.school-directory-grid{grid-template-columns:1fr}.opportunity-form-grid,.opportunity-facts{grid-template-columns:1fr}.opportunity-card-top{align-items:flex-start}.opportunity-deadline{font-size:9px}.opportunity-apply-box{flex-direction:column;align-items:stretch}.opportunity-apply-box .btn{width:100%;text-align:center}.community-hero{align-items:flex-start;flex-direction:column}.community-hero-stats{width:100%;box-sizing:border-box}.community-quick-links .btn{flex:1;text-align:center}}

/* v42: Student Tools */
.student-tools-hero{padding-top:20px}.eyebrow{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.12em;opacity:.9}.student-tools-grid{grid-template-columns:repeat(4,1fr)}.student-tool-card{position:relative;min-height:205px;padding:20px}.student-tool-card .post-title{margin:8px 0}.student-tool-icon{font-size:34px;line-height:1}.student-tool-card .btn{margin-top:10px}.student-tool-card.is-coming{opacity:.78}.tool-coming{display:inline-flex;margin-top:10px;padding:6px 9px;border-radius:999px;background:var(--bg);border:1px solid var(--border);font-size:10px;font-weight:850;color:var(--muted)}.tools-note{padding:22px}.tools-note h2{margin-top:0}.tools-note p{color:var(--muted);line-height:1.7}.tool-page-head{padding-bottom:8px}.tool-page-head h1{margin:10px 0 7px;font-size:34px}.tool-page-head p{color:var(--muted);max-width:720px}.tool-back{font-size:12px;font-weight:850;color:var(--primary)}.tool-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:20px;align-items:start}.tool-main-card{padding:24px}.tool-form-wrap{max-width:680px}.tool-form-wrap label{display:block;font-size:13px;font-weight:850;margin-bottom:7px}.tool-input-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.tool-input-row input,.tool-form-wrap select{width:100%;height:50px;box-sizing:border-box;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;padding:12px;font:inherit;outline:none}.tool-input-row span{font-weight:900;color:var(--muted);white-space:nowrap}.tool-error{padding:10px 12px;border-radius:10px;background:#fff1f2;border:1px solid #fecdd3;color:#be123c;font-size:12px;margin:10px 0}.tool-result{margin-top:22px;padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--bg)}.tool-result-score{display:flex;align-items:baseline;gap:6px}.tool-result-score strong{font-size:52px;line-height:1;font-weight:950;background:linear-gradient(90deg,#1261ff,#7c3aed,#8aa62b);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.tool-result-score span{font-size:15px;color:var(--muted);font-weight:800}.tool-result-percent{font-size:13px;font-weight:900;color:var(--primary);margin-top:7px}.tool-result h2{margin:16px 0 6px}.tool-result p{color:var(--muted);line-height:1.65}.tool-side{display:grid;gap:14px}.tool-side-card{padding:20px}.tool-side-card h2{font-size:17px;margin-top:0}.tool-side-card p,.tool-side-card li{font-size:13px;color:var(--muted);line-height:1.65}.tool-side-card ol{padding-left:19px}.subject-result-head{display:flex;gap:13px;align-items:center}.subject-result-head h2{margin:0}.subject-result-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.subject-list{margin:20px 0;padding-left:25px}.subject-list li{padding:8px 0;font-weight:750;border-bottom:1px solid var(--border)}.tool-warning{margin-top:18px;padding:13px;border-radius:10px;background:rgba(138,166,43,.10);border:1px solid rgba(138,166,43,.25);font-size:12px;line-height:1.6;color:var(--text)}
@media(max-width:1000px){.student-tools-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.student-tools-grid,.tool-layout{grid-template-columns:1fr}.tool-page-head h1{font-size:28px}.tool-main-card{padding:18px}.student-tool-card{min-height:auto}.tool-side{grid-template-columns:1fr}.tool-result-score strong{font-size:44px}}


/* v43: Student Tools homepage section + cleaner development labels */
.homepage-tools-grid{grid-template-columns:repeat(2,1fr);max-width:900px}
.homepage-tool-card{padding:20px;min-height:205px;display:flex;flex-direction:column;align-items:flex-start}
.homepage-tool-card .post-title{margin:9px 0 7px}
.homepage-tool-card .excerpt{flex:1;margin-bottom:12px}
.homepage-tool-card .btn{margin-top:auto}
.tool-coming{background:var(--soft);border-color:var(--border);text-transform:none}
@media(max-width:800px){.homepage-tools-grid{grid-template-columns:1fr}.homepage-tool-card{min-height:auto}}
/* v44: all Student Tools are functional */
.tool-field{width:100%;height:50px;box-sizing:border-box;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;padding:12px;font:inherit;outline:none;margin-bottom:12px}.tool-field:focus,.tool-input-row input:focus,.tool-form-wrap select:focus{border-color:#1261ff;box-shadow:0 0 0 3px rgba(18,97,255,.10)}.tool-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:4px}.tool-check{display:flex;align-items:flex-start;gap:9px;margin:12px 0;font-size:13px;line-height:1.5;color:var(--text)}.tool-check input{margin-top:3px}.tool-actions-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.eligibility-list{margin:16px 0 0;padding-left:20px}.eligibility-list li{padding:7px 0;line-height:1.5;color:var(--text)}.check-ok{color:#166534}.check-no{color:#9f1239}.check-info{color:var(--muted)}.waec-row,.cgpa-row{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:9px;align-items:center;margin-bottom:9px}.waec-row .tool-field,.cgpa-row .tool-field{margin-bottom:0}.waec-grade{font-weight:950;text-align:center;padding:12px;border-radius:10px;background:var(--soft);border:1px solid var(--border)}.waec-summary-list{display:grid;gap:7px;margin-top:14px}.waec-summary-list div{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:9px}.deadline-note{padding:15px 18px;margin-bottom:16px;display:flex;gap:10px;align-items:flex-start}.deadline-note strong{white-space:nowrap}.deadline-note span{color:var(--muted);font-size:13px;line-height:1.5}.deadline-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.deadline-card{display:block;padding:18px;transition:transform .18s ease,box-shadow .18s ease}.deadline-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(16,24,40,.10)}.deadline-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.deadline-top strong{font-size:12px;color:var(--primary)}.deadline-top strong.urgent{color:#b45309}.deadline-top strong.expired{color:#b91c1c}.deadline-card h2{font-size:17px;line-height:1.35;margin:12px 0 7px}.deadline-card p,.deadline-card>span{font-size:12px;color:var(--muted);line-height:1.5}.homepage-tools-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){.homepage-tools-grid{grid-template-columns:repeat(2,1fr)}.deadline-grid{grid-template-columns:1fr}}
@media(max-width:800px){.tool-field-grid{grid-template-columns:1fr;gap:0}.waec-row,.cgpa-row{grid-template-columns:1fr}.waec-grade{text-align:left}.deadline-note{display:block}.deadline-note span{display:block;margin-top:5px}.homepage-tools-grid{grid-template-columns:1fr}.tool-actions-row .btn{width:100%;justify-content:center}}


/* v45: more readable mobile single-page sidebars and useful blog feed on every profile */
.profile-blog-note{margin:0 0 14px;color:var(--muted);font-size:14px;line-height:1.6}
@media(max-width:800px){
  .single-side-card{padding:16px}
  .single-side-title{gap:12px;margin-bottom:13px}
  .single-side-title span{font-size:17px;line-height:1.35}
  .single-side-title a{font-size:13px;white-space:nowrap}
  .single-side-links a{font-size:15px;line-height:1.5;padding:12px 0;gap:12px}
  .single-side-links b{min-width:29px;height:26px;font-size:12px}
  .single-side-posts a{padding:13px 0}
  .single-side-posts strong{font-size:15px;line-height:1.5;font-weight:800}
  .single-side-posts small{font-size:12px;line-height:1.5;margin-top:5px}
  .single-side-empty{font-size:14px;line-height:1.55}
  .single-side-search-form input{font-size:15px}
  .single-side-search-form button{flex:0 0 44px}
  .single-side-kicker{font-size:11px}
  .single-side-cta h3{font-size:19px}
  .single-side-cta p{font-size:14px;line-height:1.65}
}


/* v46: Olive Marketplace */
.market-eyebrow{display:block;color:var(--primary);font-size:11px;font-weight:900;letter-spacing:.13em;margin-bottom:5px}.market-hero{padding:30px;margin:22px 0 20px;border-radius:22px;background:linear-gradient(125deg,#101827 0%,#192c49 55%,#314c27 100%);color:#fff;box-shadow:0 14px 32px rgba(16,24,40,.12)}.market-hero .tag{color:#fff}.market-hero h1{font-size:clamp(28px,4vw,42px);line-height:1.12;max-width:760px;margin:13px 0}.market-hero p{color:#d4dceb;max-width:680px;line-height:1.7}.market-actions,.market-home-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.market-filter{display:grid;grid-template-columns:minmax(0,1fr) 240px auto;gap:10px;padding:14px;margin-bottom:26px}.market-filter input,.market-filter select,.market-form input,.market-form textarea,.market-form select,.market-contact-card select{width:100%;box-sizing:border-box;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;padding:12px;font:inherit;min-height:48px}.market-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:16px 0 24px}.market-card{display:block;overflow:hidden;min-width:0;text-decoration:none;color:var(--text);transition:transform .18s ease,box-shadow .18s ease}.market-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(16,24,40,.12)}.market-thumb{height:175px;background:var(--soft);overflow:hidden}.market-thumb img{width:100%;height:100%;object-fit:cover;display:block}.market-card-body{padding:15px}.market-category{display:inline-block;color:var(--primary);font-size:11px;font-weight:850;margin-bottom:6px}.market-card h3{font-size:16px;line-height:1.35;margin:3px 0 8px}.market-price{font-size:19px;font-weight:950;color:var(--text)}.market-card-body p,.market-meta{font-size:12px;color:var(--muted);line-height:1.5}.market-view{display:inline-block;margin-top:7px;font-size:12px;font-weight:850;color:var(--primary)}.market-empty{grid-column:1/-1;text-align:center;padding:30px}.market-empty>div{font-size:36px}.market-empty h3{margin:8px 0}.market-empty p{color:var(--muted)}.market-safety{border:1px solid rgba(22,128,61,.2);background:rgba(22,128,61,.06);border-radius:14px;padding:16px 18px;margin:25px 0}.market-safety p{font-size:13px;color:var(--muted);line-height:1.65;margin:6px 0 0}.market-form-card{max-width:850px;margin:26px auto;padding:26px}.market-form-card h1{margin:15px 0 8px}.market-intro,.market-form-hint{font-size:13px;color:var(--muted);line-height:1.65}.market-form{display:grid;gap:15px;margin-top:20px}.market-form label{display:block;font-size:13px;font-weight:850}.market-form label input,.market-form label textarea,.market-form label select{display:block;margin-top:7px;font-weight:400}.market-form-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.market-form input[type=file]{padding:9px}.market-form-hint{margin:0}.market-notice,.market-error{border-radius:10px;padding:13px 15px;margin:16px 0;font-size:13px;line-height:1.6}.market-notice{background:rgba(22,128,61,.08);border:1px solid rgba(22,128,61,.2)}.market-error{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239}.my-market-listings{margin-top:20px}.my-market-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--border)}.my-market-row p{font-size:12px;color:var(--muted);margin:5px 0 0}.market-single-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,.8fr);gap:20px;margin:18px 0 30px;align-items:start}.market-single{overflow:hidden}.market-single-image{width:100%;max-height:500px;object-fit:contain;background:var(--soft);display:block}.market-single-content{padding:24px}.market-single-content h1{font-size:clamp(26px,4vw,38px);line-height:1.2;margin:5px 0 10px}.market-single-price{font-size:30px;color:var(--primary)}.market-meta{margin:9px 0 20px}.market-contact-card{padding:22px;position:sticky;top:20px}.market-contact-card h2{margin-top:0}.market-contact-card p{font-size:13px;line-height:1.65;color:var(--muted)}.market-contact-btn{display:block;text-align:center}.market-contact-card hr{border:0;border-top:1px solid var(--border);margin:22px 0}.market-contact-card h3{font-size:15px}.market-contact-card form{display:grid;gap:9px}.market-home-banner{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:center;padding:26px;border-radius:20px;background:linear-gradient(120deg,rgba(18,97,255,.08),rgba(124,58,237,.07),rgba(138,166,43,.10));border:1px solid var(--border)}.market-home-copy h3{font-size:25px;line-height:1.2;margin:12px 0 8px}.market-home-copy p{color:var(--muted);line-height:1.7;max-width:520px}.market-home-icon{font-size:30px}.market-home-categories{display:grid;grid-template-columns:1fr 1fr;gap:9px}.market-home-category{display:flex;gap:9px;align-items:center;padding:12px;background:var(--card);border:1px solid var(--border);border-radius:12px;font-size:12px}.market-home-category span{font-size:20px}.market-home-category strong{line-height:1.3}.market-home-latest{margin-top:24px}.market-home-latest .section-head h3{margin:0}.market-home-latest .section-head>a{font-size:12px;font-weight:850}.market-home-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.market-home-empty{padding:22px}.market-home-empty p{font-size:12px;color:var(--muted)}.market-home-empty a{font-size:12px;font-weight:850;color:var(--primary)}
@media(max-width:1000px){.market-grid,.market-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-thumb{height:160px}}
@media(max-width:800px){.market-hero{padding:23px 19px}.market-filter{grid-template-columns:1fr}.market-grid,.market-home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.market-thumb{height:135px}.market-card-body{padding:12px}.market-card h3{font-size:14px}.market-price{font-size:17px}.market-home-banner{grid-template-columns:1fr;padding:20px}.market-home-copy h3{font-size:23px}.market-home-categories{grid-template-columns:1fr 1fr}.market-form-card{padding:19px}.market-form-two,.market-single-grid{grid-template-columns:1fr}.market-contact-card{position:static}.market-single-content{padding:18px}.my-market-row{align-items:flex-start}.my-market-row .btn{white-space:nowrap}}
@media(max-width:420px){.market-home-categories{grid-template-columns:1fr}.market-grid,.market-home-grid{gap:9px}.market-thumb{height:115px}.market-card-body{padding:10px}.market-category{font-size:10px}}

/* v47: clear, horizontal footer page links */
.olive-site-footer .footer-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.olive-site-footer .footer-copy{flex:0 0 auto}
.olive-site-footer .olive-footer-links{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:clamp(10px,2.2vw,24px);white-space:nowrap;flex-wrap:nowrap}
.olive-site-footer .olive-footer-links a{display:inline-block;color:#d5dbea;text-decoration:none;font-size:12px;font-weight:650;line-height:1.6}
.olive-site-footer .olive-footer-links a:hover,.olive-site-footer .olive-footer-links a:focus{color:#fff;text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){
 .olive-site-footer .footer-inner{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
 .olive-site-footer .olive-footer-links{width:100%;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:8px;white-space:nowrap;flex-wrap:nowrap}
 .olive-site-footer .olive-footer-links a{font-size:clamp(9px,2.8vw,12px)}
}

/* v48: footer navigation above copyright on mobile */
@media(max-width:600px){
 .olive-site-footer .footer-inner{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
 .olive-site-footer .olive-footer-links{order:1;width:100%;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:8px;white-space:nowrap;flex-wrap:nowrap}
 .olive-site-footer .footer-copy{order:2;width:100%}
 .olive-site-footer .olive-footer-links a{font-size:clamp(9px,2.8vw,12px)}
}

/* v49 marketplace upgrade: filters, seller tools and product photo gallery */
.market-filter{display:grid;grid-template-columns:minmax(180px,2fr) minmax(140px,1fr) minmax(150px,1fr) minmax(90px,.65fr) minmax(90px,.65fr) minmax(130px,1fr) auto;gap:9px;padding:13px;margin:20px 0}
.market-filter input,.market-filter select{min-width:0;width:100%;box-sizing:border-box;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:9px;padding:10px;font:inherit;font-size:13px}
.market-negotiable{display:inline-block;vertical-align:middle;padding:3px 7px;border-radius:999px;background:rgba(22,128,61,.1);color:#15803d;font-size:10px;font-weight:850}
.market-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:8px}
.market-gallery img{width:100%;height:105px;object-fit:cover;border-radius:8px;background:var(--soft)}
.market-owner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px}
.market-owner-actions form{margin:0}
.market-owner-actions .btn-small{padding:7px 10px;font-size:11px;min-height:34px}
.market-check{display:flex!important;align-items:center;gap:9px}
.market-check input{width:18px!important;min-height:18px!important;margin:0!important}
.my-market-main{min-width:0;flex:1}
@media(max-width:1000px){.market-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.market-filter input[type=search]:first-of-type{grid-column:1/-1}.market-filter button{grid-column:1/-1}}
@media(max-width:600px){.market-filter{grid-template-columns:1fr 1fr;gap:8px}.market-filter input[type=search]:first-of-type{grid-column:1/-1}.market-filter button{grid-column:1/-1}.market-gallery img{height:75px}.market-owner-actions{gap:6px}.market-owner-actions .btn-small{padding:6px 8px}.my-market-row{display:block}.market-owner-actions form{display:inline-flex}}

/* v50: marketplace core experience polish */
.market-filter{align-items:center}
.market-filter input:focus,.market-filter select:focus{outline:2px solid var(--accent,#16803d);outline-offset:1px}
.market-clear-filters{font-size:13px;font-weight:700;text-decoration:none;color:var(--accent,#16803d)}
.my-market-row{display:flex;align-items:flex-start;gap:13px;padding:15px 0;border-bottom:1px solid var(--border)}
.my-market-image{flex:0 0 76px;width:76px;height:76px;border-radius:10px;overflow:hidden;background:var(--soft);display:flex;align-items:center;justify-content:center}
.my-market-image img{width:100%;height:100%;object-fit:cover}
.my-market-image span{font-size:25px}
.my-market-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin:7px 0}
.market-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;background:var(--soft);color:var(--text)}
.market-status-publish{background:#e2f8e9;color:#166534}
.market-status-pending{background:#fff4d6;color:#92400e}
.market-status-draft{background:#eef2f7;color:#475569}
.market-status-sold{background:#e5e7eb;color:#374151}
.market-seller-details{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.market-seller-details span{display:flex;flex-direction:column;gap:4px;padding:10px;border-radius:9px;background:var(--soft);font-size:12px}
.market-seller-details strong{font-size:11px;color:var(--muted)}
.market-single-image{display:block;max-width:100%;object-fit:contain}
@media(max-width:600px){.market-filter{grid-template-columns:1fr 1fr}.my-market-image{flex-basis:64px;width:64px;height:64px}.market-seller-details{grid-template-columns:1fr 1fr}.market-owner-actions{flex-wrap:wrap}}


/* v52 — Olive.ng violet hero refresh. Visual-only overrides; existing theme functions retained. */
:root{--olive-violet:#762cff;--olive-indigo:#17105b;--olive-purple:#3510a6}
.topbar{background:rgba(12,9,43,.97);border-bottom:1px solid rgba(168,135,255,.22);backdrop-filter:blur(14px)}
.topbar .logo{background:linear-gradient(90deg,#fff 0%,#f3eaff 45%,#c18bff 100%);-webkit-background-clip:text;background-clip:text}
.topbar .nav a,.topbar .date{color:#e4defc}.topbar .nav a:hover{color:#d6a5ff}.topbar .icon-btn{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.15)}
.topbar .btn-outline{color:#fff;border-color:rgba(255,255,255,.38);background:transparent}.topbar .btn-primary{background:linear-gradient(110deg,#762cff,#bd29f7);box-shadow:0 7px 22px rgba(118,44,255,.25)}
.hero{padding:22px 0 18px;background:radial-gradient(ellipse at 76% 24%,rgba(83,35,220,.16),transparent 44%)}
.hero-card{position:relative;isolation:isolate;overflow:hidden;min-height:310px;border:1px solid rgba(185,153,255,.28);border-radius:25px;padding:clamp(25px,4vw,44px);background:radial-gradient(ellipse at 80% 20%,rgba(92,39,255,.76),transparent 37%),radial-gradient(ellipse at 98% 100%,rgba(171,26,255,.68),transparent 36%),linear-gradient(118deg,#080820 0%,#11104a 42%,#241080 74%,#16094b 100%);box-shadow:0 22px 55px rgba(40,17,105,.18)}
.hero-card:before,.hero-card:after{content:"";position:absolute;z-index:-1;pointer-events:none;border-radius:50%;transform:rotate(-24deg)}
.hero-card:before{width:63%;height:180%;right:-8%;top:-47%;border:2px solid rgba(149,86,255,.72);box-shadow:0 0 22px rgba(134,55,255,.4),inset 0 0 30px rgba(105,37,255,.22);background:radial-gradient(ellipse at 62% 48%,rgba(100,30,255,.23),transparent 61%)}
.hero-card:after{width:42%;height:135%;right:0;bottom:-85%;border:2px solid rgba(196,55,255,.78);box-shadow:0 0 24px rgba(163,34,255,.48)}
.hero-card>div{position:relative;z-index:1}.hero h1{max-width:670px;font-size:clamp(35px,4.5vw,54px);letter-spacing:-.045em;line-height:1.04}.hero h1:after{content:"";display:block;width:90px;height:4px;margin-top:15px;border-radius:5px;background:linear-gradient(90deg,#8a35ff,#ec4cff)}
.hero p{max-width:600px;color:#e5e0ff;font-size:16px;line-height:1.7}.hero .tag{border:1px solid rgba(211,186,255,.23);border-radius:30px;background:rgba(93,54,185,.34)!important;letter-spacing:.08em}.hero .btn-light{background:linear-gradient(110deg,#7c2cff,#bd2bfa);color:#fff;box-shadow:0 8px 22px rgba(118,44,255,.28)}.hero-actions .btn:not(.btn-light){border:1px solid rgba(255,255,255,.26)}
.hero-visual{border:1px solid rgba(220,202,255,.25);background:rgba(12,7,58,.42);backdrop-filter:blur(9px);box-shadow:0 14px 35px rgba(0,0,0,.12)}.stat{border:1px solid rgba(222,208,255,.12);background:rgba(255,255,255,.075)}.stat b{color:#f2d6ff}
.olive-quick-access{position:relative;z-index:2;margin:-3px 0 8px}.olive-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.olive-quick-card{display:flex;align-items:center;gap:12px;min-width:0;padding:17px 15px;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:0 8px 24px rgba(27,20,70,.055);color:var(--text);transition:transform .18s,border-color .18s,box-shadow .18s}.olive-quick-card:hover{transform:translateY(-3px);border-color:#c7a8ff;box-shadow:0 14px 30px rgba(93,44,190,.12)}.olive-quick-card>span:nth-child(2){flex:1;min-width:0}.olive-quick-card strong,.olive-quick-card small{display:block}.olive-quick-card strong{font-size:14px;line-height:1.3}.olive-quick-card small{font-size:11px;line-height:1.4;color:var(--muted);margin-top:4px}.olive-quick-card>b{font-size:20px;color:#8137f4}.olive-quick-icon{width:43px;height:43px;flex:0 0 43px;display:grid;place-items:center;border-radius:13px;background:#f0e7ff;color:#7c2cff;font-size:23px}.olive-quick-icon.blue{background:#e5efff;color:#2472ee}.olive-quick-icon.teal{background:#ddf8f2;color:#118c7d}.olive-quick-icon.green{background:#e3f8e9;color:#19894b}.olive-quick-cbt{border-color:#d5c0ff;background:linear-gradient(135deg,var(--card),rgba(126,65,255,.06))}
.section-head h2{letter-spacing:-.025em}.card,.topic,.school{transition:border-color .15s}.pagination .current{background:linear-gradient(110deg,#742cff,#c32bfa);}
@media(max-width:900px){.olive-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-card{gap:16px}.hero h1{font-size:clamp(32px,5vw,45px)}}
@media(max-width:600px){.hero-card{padding:24px 20px;border-radius:20px;grid-template-columns:1fr}.hero-card:before{width:100%;right:-35%;top:-38%}.hero-card:after{width:70%;right:-20%;bottom:-92%}.hero h1{font-size:36px}.hero p{font-size:14px}.hero-visual{grid-template-columns:1fr;padding:10px}.stat{padding:10px 12px}.olive-quick-grid{gap:9px}.olive-quick-card{padding:12px 10px;gap:9px;border-radius:13px}.olive-quick-icon{width:35px;height:35px;flex-basis:35px;border-radius:10px;font-size:19px}.olive-quick-card strong{font-size:12px}.olive-quick-card small{font-size:10px}.topbar{background:#100a35}}


/* Olive.ng v53 — site-wide purple/indigo glass visual system */
:root{
 --primary:#a855f7;--primary-dark:#7e22ce;--accent:#d946ef;--violet:#a855f7;
 --primary-soft:rgba(168,85,247,.16);--bg:#08051f;--card:rgba(18,14,58,.88);
 --text:#f7f5ff;--muted:#c4bddf;--border:rgba(177,145,255,.24);
 --soft:rgba(114,72,255,.16);--shadow:0 14px 40px rgba(0,0,0,.24)
}
html{background:#08051f}
body{
 color:var(--text);
 background:
  radial-gradient(ellipse at 82% 4%,rgba(103,32,255,.42),transparent 32%),
  radial-gradient(ellipse at 8% 28%,rgba(73,36,183,.28),transparent 34%),
  radial-gradient(ellipse at 90% 68%,rgba(144,23,255,.20),transparent 30%),
  linear-gradient(135deg,#07051b 0%,#10083a 48%,#08051f 100%);
 background-attachment:fixed;
}
body:before{
 content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.72;
 background:
  radial-gradient(ellipse at 74% 12%,transparent 0 27%,rgba(108,35,255,.08) 27.2% 27.8%,transparent 28% 32%,rgba(174,42,255,.16) 32.2% 32.6%,transparent 32.9%),
  radial-gradient(circle at 20% 22%,rgba(255,255,255,.28) 0 1px,transparent 1.5px),
  radial-gradient(circle at 67% 38%,rgba(255,255,255,.22) 0 1px,transparent 1.5px),
  radial-gradient(circle at 88% 72%,rgba(255,255,255,.22) 0 1px,transparent 1.5px);
 background-size:auto,113px 113px,157px 157px,191px 191px
}
.topbar,.header,.site-header,.main-header{
 background:rgba(8,5,31,.84)!important;backdrop-filter:blur(18px);
 border-color:var(--border)!important;color:#fff
}
.logo{background:linear-gradient(90deg,#fff 0%,#d8b4fe 46%,#a855f7 80%);-webkit-background-clip:text;background-clip:text}
.nav a,.date,.header-tools,.topbar a{color:#e8e2ff}
.nav a:hover,.nav .current-menu-item>a{color:#e879f9}
.btn,.button,button[type=submit],input[type=submit]{border-radius:12px}
.btn-primary,.button-primary,.btn.primary,button[type=submit],input[type=submit]{
 background:linear-gradient(110deg,#7c3aed,#c026d3)!important;color:#fff!important;border-color:transparent!important;
 box-shadow:0 8px 24px rgba(124,58,237,.22)
}
input,textarea,select{
 background:rgba(10,7,36,.86);color:#f7f5ff;border-color:rgba(177,145,255,.35)
}
input::placeholder,textarea::placeholder{color:#aaa0ce}
a{color:inherit}
a:hover{color:#e879f9}
.card,.post-card,.resource-card,.tool-card,.forum-card,.discussion-card,.opportunity-card,.listing-card,
.widget-box,.comment-box,.form-box,.search-box,.content-box,.student-card,.profile-card,.community-card,
.question-card,.result-card,.stat-card,.dashboard-card,.notice-card,.pagination a,.page-numbers,
article,.entry-content .wp-block-group,.wp-block-post,.wp-block-query .wp-block-post-template>li{
 background:rgba(18,14,58,.82);color:#f7f5ff;border-color:rgba(177,145,255,.22);
 box-shadow:0 12px 35px rgba(0,0,0,.13)
}
.card a,.post-card a,.resource-card a,.tool-card a,.forum-card a,.discussion-card a,
.opportunity-card a,.listing-card a,.entry-title a{color:#fff}
.card p,.post-card p,.resource-card p,.tool-card p,.forum-card p,.discussion-card p,
.opportunity-card p,.listing-card p,.entry-summary,.entry-meta,.muted,.description{color:#c4bddf}
h1,h2,h3,h4,h5,h6,.entry-title,.page-title{color:#fff}
hr,.divider{border-color:var(--border)}
.tag,.badge,.category-label,.post-category{background:rgba(168,85,247,.22);color:#f0abfc;border-color:rgba(216,180,254,.25)}
.sidebar,.widget-area,.comments-area,.comment-respond,.comment-list li{
 color:#f7f5ff
}
table{color:#f7f5ff;border-color:var(--border)}
th{background:rgba(124,58,237,.25);color:#fff}
td{border-color:var(--border)}
tr:nth-child(even){background:rgba(255,255,255,.025)}
.site-footer,footer,.footer,.footer-bottom{
 background:rgba(7,5,27,.78);color:#d7cff4;border-color:var(--border)
}
.site-footer a,footer a,.footer a{color:#e9d5ff}
.bottom-nav,.mobile-bottom-nav,.mobile-nav{
 background:rgba(13,8,43,.94);backdrop-filter:blur(18px);border-color:var(--border);color:#f7f5ff
}
.hero,.home-hero,.page-hero,.student-hero{
 background-color:rgba(13,7,47,.65);color:#fff;border-color:var(--border)
}
::selection{background:#9333ea;color:#fff}
@media(prefers-reduced-motion:no-preference){
 .card,.post-card,.resource-card,.tool-card,.forum-card,.discussion-card,.opportunity-card,.listing-card{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
 .card:hover,.post-card:hover,.resource-card:hover,.tool-card:hover,.forum-card:hover,.discussion-card:hover,.opportunity-card:hover,.listing-card:hover{transform:translateY(-2px);border-color:rgba(216,180,254,.5);box-shadow:0 16px 40px rgba(82,30,180,.2)}
}
@media(max-width:700px){
 body{background-attachment:scroll}
 body:before{opacity:.42}
}

/* v54: Default branded featured image */
.olive-default-featured{display:block;width:100%;height:auto;object-fit:cover;object-position:center;border-radius:inherit}


/* v55 — premium full-width forum archive banner */
.olive-forum-archive{overflow:hidden}
.forum-archive-hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(42px,6vw,82px) max(4%,calc((100vw - 1320px)/2)) 28px;background:radial-gradient(ellipse at 80% 30%,rgba(119,39,255,.55),transparent 36%),radial-gradient(ellipse at 25% 95%,rgba(72,28,180,.28),transparent 35%),linear-gradient(118deg,#09051f 0%,#16094a 48%,#10052d 100%);border-bottom:1px solid rgba(202,168,255,.2);color:#fff}
.forum-archive-hero:before{content:"";position:absolute;z-index:-1;inset:-30%;pointer-events:none;background:repeating-radial-gradient(ellipse at 78% 35%,transparent 0 100px,rgba(164,91,255,.12) 102px 104px,transparent 107px 145px);transform:rotate(-13deg);opacity:.8}
.forum-archive-hero:after{content:"";position:absolute;z-index:-1;right:-7%;top:-45%;width:62%;height:155%;border:1px solid rgba(177,119,255,.26);border-radius:50%;box-shadow:0 0 0 34px rgba(147,51,234,.035),0 0 0 75px rgba(147,51,234,.04),0 0 100px rgba(124,58,237,.17);transform:rotate(-24deg);pointer-events:none}
.forum-hero-inner{width:min(1320px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:clamp(25px,5vw,80px);align-items:center;position:relative;z-index:1}
.forum-hero-copy{max-width:720px}
.forum-hero-kicker,.forum-section-kicker{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:850;letter-spacing:.16em;text-transform:uppercase;color:#d8b4fe}
.forum-kicker-dot{width:8px;height:8px;border-radius:50%;background:#e879f9;box-shadow:0 0 14px #c026d3}
.forum-hero-copy h1{font-size:clamp(42px,5.6vw,76px);line-height:.99;letter-spacing:-.055em;margin:22px 0 20px;color:#fff}
.forum-hero-copy h1 span{background:linear-gradient(95deg,#d8b4fe 0%,#f0abfc 48%,#a5b4fc 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.forum-hero-copy>p{max-width:610px;font-size:clamp(15px,1.5vw,19px);line-height:1.7;color:#d2c8ef;margin:0}
.forum-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.forum-hero-btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:13px 19px;border-radius:12px;font-weight:800;font-size:14px;transition:transform .18s ease,box-shadow .18s ease}
.forum-hero-btn:hover{transform:translateY(-2px);color:#fff}
.forum-hero-btn-primary{color:#fff!important;background:linear-gradient(105deg,#7c3aed,#c026d3);box-shadow:0 10px 28px rgba(124,58,237,.28)}
.forum-hero-btn-primary:hover{box-shadow:0 14px 35px rgba(192,38,211,.3)}
.forum-hero-btn-ghost{border:1px solid rgba(221,203,255,.34);background:rgba(255,255,255,.045);color:#f5efff!important}
.forum-hero-stats{display:flex;align-items:center;gap:22px;margin-top:36px;padding-top:23px;border-top:1px solid rgba(216,180,254,.18);max-width:610px}
.forum-hero-stats div{display:flex;flex-direction:column;gap:2px}.forum-hero-stats strong{font-size:21px;color:#fff;letter-spacing:-.02em}.forum-hero-stats span{font-size:11px;color:#bfb2e6}.forum-hero-stats i{height:30px;width:1px;background:rgba(216,180,254,.22)}
.forum-hero-art{position:relative;min-height:340px;display:flex;align-items:center;justify-content:center}
.forum-art-glow{position:absolute;width:75%;height:72%;border-radius:50%;background:rgba(113,42,255,.32);filter:blur(55px)}
.forum-art-window{position:relative;width:min(100%,460px);padding:20px;border:1px solid rgba(213,185,255,.28);border-radius:23px;background:linear-gradient(145deg,rgba(42,24,100,.86),rgba(15,9,46,.92));box-shadow:0 28px 80px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.08);transform:rotate(1.2deg);backdrop-filter:blur(12px)}
.forum-art-window-top{display:flex;align-items:center;gap:6px;padding-bottom:18px;border-bottom:1px solid rgba(216,180,254,.16);font-size:9px;letter-spacing:.12em;color:#cbb9f4}
.forum-art-window-top>span{width:7px;height:7px;border-radius:50%;background:#a855f7}.forum-art-window-top>span:first-child{background:#f0abfc}.forum-art-window-top>span:nth-child(2){background:#818cf8}.forum-art-window-top>span:nth-child(3){background:#c084fc}.forum-art-window-top b{margin-left:auto;font-weight:800}
.forum-art-message{display:flex;align-items:center;gap:13px;padding:18px 0;border-bottom:1px solid rgba(216,180,254,.13)}
.forum-art-avatar{flex:0 0 40px;height:40px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#7c3aed,#c026d3);color:#fff;font-size:21px;font-weight:900}
.forum-art-avatar-two{background:linear-gradient(135deg,#4338ca,#7c3aed)}
.forum-art-message>div:nth-child(2){display:flex;flex-direction:column;gap:4px}.forum-art-message b{font-size:14px;color:#fff}.forum-art-message span{font-size:11px;color:#bfb2e6}.forum-art-message em{margin-left:auto;font-size:20px;color:#d8b4fe;font-style:normal}
.forum-art-tags{display:flex;flex-wrap:wrap;gap:7px;padding-top:17px}.forum-art-tags span{font-size:10px;font-weight:750;color:#e9d5ff;background:rgba(168,85,247,.17);border:1px solid rgba(216,180,254,.16);padding:7px 9px;border-radius:99px}
.forum-art-float{position:absolute;display:flex;align-items:center;gap:10px;padding:12px 15px;border:1px solid rgba(216,180,254,.25);border-radius:14px;background:rgba(25,12,68,.92);box-shadow:0 12px 35px rgba(0,0,0,.25);color:#f0abfc;font-size:19px;backdrop-filter:blur(14px)}
.forum-art-float-top{top:18px;right:-4px}.forum-art-float-top span{font-size:11px;color:#eee5ff;font-weight:750}
.forum-art-float-bottom{bottom:9px;left:-18px;color:#fff}.forum-art-float-bottom>span:last-child{display:flex;flex-direction:column;gap:2px}.forum-art-float-bottom b{font-size:12px}.forum-art-float-bottom small{font-size:10px;color:#c4b5fd}
.forum-float-check{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:linear-gradient(135deg,#7c3aed,#c026d3);font-weight:900}
.forum-hero-category-row{position:relative;z-index:1;width:min(1320px,100%);margin:38px auto 0;padding-top:21px;border-top:1px solid rgba(216,180,254,.16);display:flex;align-items:center;gap:20px}
.forum-hero-category-row>span{font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:#b9a9e3;white-space:nowrap}
.forum-hero-categories{display:flex;gap:8px;flex-wrap:wrap}
.forum-hero-categories a{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid rgba(216,180,254,.18);border-radius:99px;background:rgba(255,255,255,.035);font-size:11px;font-weight:750;color:#eee5ff}
.forum-hero-categories a:hover{border-color:rgba(232,121,249,.6);background:rgba(168,85,247,.14);color:#fff}
.forum-hero-categories small{display:grid;place-items:center;min-width:19px;height:19px;border-radius:99px;background:rgba(168,85,247,.25);font-size:9px;color:#f0abfc}
.forum-archive-content{padding-top:42px;padding-bottom:55px}
.forum-archive-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}
.forum-archive-heading h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.04em;margin:8px 0;color:#fff}
.forum-archive-heading p{margin:0;color:#c4bddf;font-size:14px}
.forum-archive-search{display:flex;width:min(100%,340px);border:1px solid rgba(177,145,255,.3);border-radius:12px;background:rgba(18,14,58,.78);padding:5px}
.forum-archive-search input{flex:1;min-width:0;border:0!important;box-shadow:none!important;background:transparent!important;color:#fff;padding:9px 10px;font-size:13px}
.forum-archive-search button{width:39px;flex:0 0 39px;border:0;border-radius:8px;background:linear-gradient(120deg,#7c3aed,#c026d3);color:#fff;font-size:23px;cursor:pointer}
.forum-archive-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:23px;align-items:start}
.forum-archive-list{min-width:0;display:flex;flex-direction:column;gap:14px}
.forum-archive-card{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:170px;overflow:hidden;border:1px solid rgba(177,145,255,.22);border-radius:17px;background:rgba(18,14,58,.78);box-shadow:0 12px 32px rgba(0,0,0,.12);transition:transform .18s ease,border-color .18s ease}
.forum-archive-card:hover{transform:translateY(-2px);border-color:rgba(216,180,254,.48)}
.forum-topic-thumb{display:block;min-height:100%;overflow:hidden;background:linear-gradient(135deg,#1a0b4b,#5b21b6)}
.forum-topic-thumb img{display:block;width:100%;height:100%;min-height:170px;object-fit:cover;transition:transform .25s ease}
.forum-archive-card:hover .forum-topic-thumb img{transform:scale(1.035)}
.forum-topic-card-body{padding:17px 20px;min-width:0;display:flex;flex-direction:column}
.forum-topic-card-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#bfb2e6;font-size:10px}
.forum-topic-card-meta>span{background:rgba(168,85,247,.22);border:1px solid rgba(216,180,254,.15);border-radius:99px;padding:5px 9px;color:#e9d5ff;font-weight:800}
.forum-topic-card-meta time{font-size:10px}
.forum-topic-card-body h3{font-size:18px;line-height:1.35;letter-spacing:-.02em;margin:11px 0 7px;color:#fff}
.forum-topic-card-body h3 a{color:#fff}.forum-topic-card-body h3 a:hover{color:#e9a8ff}
.forum-topic-card-body>p{font-size:13px;line-height:1.65;color:#c4bddf;margin:0 0 14px}
.forum-topic-card-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:auto;padding-top:11px;border-top:1px solid rgba(216,180,254,.12);font-size:10px;color:#bfb2e6}
.forum-topic-card-foot a{margin-left:auto;color:#e9d5ff;font-size:11px;font-weight:850}.forum-topic-card-foot a b{font-size:15px;margin-left:4px}
.forum-archive-aside{display:grid;gap:14px}
.forum-aside-card{border:1px solid rgba(177,145,255,.22);border-radius:17px;padding:21px;background:rgba(18,14,58,.8);box-shadow:0 12px 32px rgba(0,0,0,.12)}
.forum-aside-welcome{background:radial-gradient(circle at 100% 0,rgba(192,38,211,.22),transparent 40%),linear-gradient(145deg,rgba(42,20,100,.95),rgba(17,9,49,.94))}
.forum-aside-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:rgba(168,85,247,.22);color:#e9d5ff;font-size:20px;margin-bottom:18px}
.forum-aside-card h3{font-size:18px;line-height:1.3;color:#fff;margin:8px 0 10px}
.forum-aside-card p{font-size:12px;line-height:1.7;color:#c4bddf;margin:0 0 16px}
.forum-aside-card>a{font-size:11px;font-weight:850;color:#e9d5ff}
.forum-aside-category-list{display:flex;flex-direction:column;gap:0}
.forum-aside-category-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid rgba(216,180,254,.12);font-size:12px;color:#eee5ff}
.forum-aside-category-list a:last-child{border-bottom:0;padding-bottom:0}
.forum-aside-category-list small{color:#c4b5fd;font-size:10px}
.forum-archive-empty{text-align:center;padding:48px 22px;border:1px solid var(--border);border-radius:18px;background:rgba(18,14,58,.8)}
.forum-archive-empty>span{font-size:32px;color:#e9d5ff}.forum-archive-empty h3{color:#fff;font-size:24px}.forum-archive-empty p{max-width:480px;margin:0 auto 20px;color:#c4bddf}
.forum-archive-pagination{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:25px}
.forum-archive-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:39px;min-height:39px;padding:8px 12px;border:1px solid rgba(177,145,255,.25);border-radius:10px;background:rgba(18,14,58,.8);color:#eee5ff;font-size:12px;font-weight:800}
.forum-archive-pagination .current{background:linear-gradient(110deg,#742cff,#c32bfa);border-color:transparent;color:#fff}
@media(max-width:1000px){.forum-hero-inner{grid-template-columns:minmax(0,1fr) minmax(270px,.8fr);gap:25px}.forum-hero-art{min-height:300px}.forum-art-float-top{right:-8px}.forum-art-float-bottom{left:-7px}.forum-archive-layout{grid-template-columns:minmax(0,1fr) 260px}.forum-archive-card{grid-template-columns:155px minmax(0,1fr)}.forum-topic-card-body{padding:15px}}
@media(max-width:760px){.forum-archive-hero{padding:38px 5% 23px}.forum-hero-inner{grid-template-columns:1fr;gap:8px}.forum-hero-copy h1{font-size:clamp(42px,11vw,62px);margin:17px 0}.forum-hero-copy>p{font-size:15px}.forum-hero-actions{margin-top:21px}.forum-hero-btn{padding:12px 14px;font-size:12px}.forum-hero-stats{gap:13px;margin-top:25px;padding-top:18px}.forum-hero-stats strong{font-size:17px}.forum-hero-stats span{font-size:9px}.forum-hero-art{min-height:270px;margin:5px 0 0}.forum-art-window{width:min(88%,420px);padding:15px}.forum-art-float-top{right:0;top:0}.forum-art-float-bottom{left:0;bottom:0}.forum-hero-category-row{margin-top:18px;align-items:flex-start;flex-direction:column;gap:12px}.forum-hero-categories{gap:7px}.forum-hero-categories a{font-size:10px;padding:7px 9px}.forum-archive-content{padding-top:30px}.forum-archive-heading{align-items:stretch;flex-direction:column}.forum-archive-search{width:100%}.forum-archive-layout{grid-template-columns:1fr}.forum-archive-aside{grid-template-columns:1fr 1fr}.forum-archive-card{grid-template-columns:120px minmax(0,1fr);min-height:0}.forum-topic-thumb img{min-height:100%;height:100%;position:absolute;inset:0}.forum-topic-thumb{position:relative;min-height:160px}.forum-topic-card-body{padding:12px}.forum-topic-card-body h3{font-size:14px;margin:8px 0 5px}.forum-topic-card-body>p{font-size:11px;margin-bottom:9px}.forum-topic-card-foot{gap:8px}.forum-topic-card-foot>a{width:100%;margin-left:0}.forum-topic-card-meta{gap:6px}.forum-topic-card-meta time{font-size:9px}}
@media(max-width:480px){.forum-hero-art{min-height:240px}.forum-art-float{padding:9px 10px}.forum-art-float-top span{font-size:9px}.forum-art-window-top b{font-size:8px}.forum-art-message{padding:13px 0}.forum-art-message b{font-size:12px}.forum-art-message span{font-size:10px}.forum-art-tags span{font-size:9px}.forum-archive-aside{grid-template-columns:1fr}.forum-archive-card{grid-template-columns:100px minmax(0,1fr)}.forum-topic-thumb{min-height:165px}.forum-topic-card-body{padding:10px}.forum-topic-card-foot{font-size:9px}}

/* v56 — dedicated forum thumbnail artwork and balanced crop */
.forum-topic-thumb{display:flex;align-items:center;justify-content:center;min-height:170px;background:#10052d}
.forum-topic-thumb img{display:block;width:100%;height:100%;min-height:170px;object-fit:cover;object-position:center center}
.forum-archive-card .forum-topic-thumb img{aspect-ratio:4/3}
@media(max-width:760px){
 .forum-archive-card .forum-topic-thumb{min-height:160px}
 .forum-archive-card .forum-topic-thumb img{min-height:160px;aspect-ratio:auto;object-fit:cover;object-position:center}
}
