/* Q-Bit V4 theme + navigation hardening */
:root,
html[data-qbit-theme="dark"] {
  --qbg:#050a13;
  --qpanel:rgba(10,20,36,.72);
  --qpanel-solid:#0a1424;
  --qborder:rgba(151,178,222,.16);
  --qtext:#ecf3ff;
  --qmuted:#8fa0b9;
  --qsoft:#b6c8df;
  --qblue:#2584ff;
  --qblue2:#7cb2ff;
  --qviolet:#8a63ff;
  --qinput:rgba(255,255,255,.035);
  color-scheme:dark;
}
html[data-qbit-theme="light"] {
  --qbg:#f4f7fb;
  --qpanel:rgba(255,255,255,.88);
  --qpanel-solid:#ffffff;
  --qborder:rgba(20,42,72,.14);
  --qtext:#0b1628;
  --qmuted:#53657c;
  --qsoft:#42546b;
  --qblue:#146ef5;
  --qblue2:#146ef5;
  --qviolet:#6847e8;
  --qinput:rgba(15,44,82,.045);
  color-scheme:light;
}

html[data-qbit-theme="dark"] body.qbit-home,
html[data-qbit-theme="light"] body.qbit-home { background:var(--qbg) !important; color:var(--qtext) !important; }
body.qbit-home { transition:background-color .25s ease, color .25s ease; }

html[data-qbit-theme="light"] .ambient-grid { background-image:linear-gradient(rgba(15,44,82,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(15,44,82,.055) 1px,transparent 1px); }
html[data-qbit-theme="light"] .home-nav-inner { background:rgba(255,255,255,.9) !important; box-shadow:0 18px 55px rgba(20,42,72,.12); }
html[data-qbit-theme="dark"] .home-nav-inner { background:rgba(5,10,19,.82) !important; }
html[data-qbit-theme="light"] .home-brand,
html[data-qbit-theme="light"] .home-nav-links a,
html[data-qbit-theme="light"] .nav-verify-link { color:#0b1628 !important; }
html[data-qbit-theme="dark"] .home-nav-links a,
html[data-qbit-theme="dark"] .nav-verify-link { color:#b9c9dc !important; }
.home-nav-links a,
.nav-verify-link { transition:color .2s ease, opacity .2s ease; }
.home-nav-links a:hover,
.nav-verify-link:hover { color:var(--qblue) !important; }

.nav-verify-link { border:0; background:transparent; padding:7px 0; font:700 .78rem/1 inherit; cursor:pointer; }
.nav-verify-link i { margin-right:4px; }
.home-nav-actions { flex-shrink:0; }
.home-nav-actions .glass-btn { white-space:nowrap; }
.portal-priority { order:1; }
.staff-link { order:2; }
.theme-btn { order:3; }
.theme-btn i { pointer-events:none; }

html[data-qbit-theme="light"] .glass-btn,
html[data-qbit-theme="light"] .icon-btn { color:#0b1628 !important; background:rgba(15,44,82,.045) !important; }
html[data-qbit-theme="dark"] .glass-btn,
html[data-qbit-theme="dark"] .icon-btn { color:#edf5ff !important; }
html[data-qbit-theme="light"] .text-btn { color:#26425f !important; }
html[data-qbit-theme="light"] .home-hero h1 span { background:linear-gradient(90deg,#0b1628,#146ef5) !important; -webkit-background-clip:text !important; background-clip:text !important; }
html[data-qbit-theme="light"] .home-hero h1 em { color:#146ef5 !important; }
html[data-qbit-theme="light"] .core-card { background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(228,238,250,.96)); color:#0b1628; box-shadow:inset 0 1px rgba(255,255,255,.95),0 40px 100px rgba(20,42,72,.18),0 0 70px rgba(37,132,255,.10); }
html[data-qbit-theme="light"] .core-logo { background:linear-gradient(160deg,#0b1628,#146ef5 70%); -webkit-background-clip:text; background-clip:text; }
html[data-qbit-theme="light"] .core-card span { color:#0b1628 !important; }
html[data-qbit-theme="light"] .floating-chip { background:rgba(255,255,255,.9); color:#243b55; box-shadow:0 15px 40px rgba(20,42,72,.12); }
html[data-qbit-theme="light"] .cap-card,
html[data-qbit-theme="light"] .service-3d,
html[data-qbit-theme="light"] .software-card,
html[data-qbit-theme="light"] .work-card { background:linear-gradient(145deg,#fff,#eef5fd) !important; color:#0b1628; box-shadow:0 24px 70px rgba(20,42,72,.08); }
html[data-qbit-theme="light"] .cap-card h3,
html[data-qbit-theme="light"] .service-3d h3,
html[data-qbit-theme="light"] .software-card h3,
html[data-qbit-theme="light"] .work-meta h3,
html[data-qbit-theme="light"] .section-head h2,
html[data-qbit-theme="light"] .intro-grid h2,
html[data-qbit-theme="light"] .stats-copy h2,
html[data-qbit-theme="light"] .tech-copy h2,
html[data-qbit-theme="light"] .verify-copy h2,
html[data-qbit-theme="light"] .quote-intro h2 { color:#0b1628 !important; }
html[data-qbit-theme="light"] .cap-card p,
html[data-qbit-theme="light"] .service-3d p,
html[data-qbit-theme="light"] .software-card p,
html[data-qbit-theme="light"] .work-meta p,
html[data-qbit-theme="light"] .intro-grid p,
html[data-qbit-theme="light"] .section-head > p,
html[data-qbit-theme="light"] .tech-copy p,
html[data-qbit-theme="light"] .verify-copy p,
html[data-qbit-theme="light"] .quote-intro p { color:#53657c !important; }
html[data-qbit-theme="light"] .stats-grid > div { background:#fff; }
html[data-qbit-theme="light"] .stats-grid strong { color:#0b1628; }
html[data-qbit-theme="light"] .tech-cloud span { color:#27425d; background:rgba(255,255,255,.7); }
html[data-qbit-theme="light"] .verify-visual > i { color:#146ef5; }
html[data-qbit-theme="light"] .quote-form { background:rgba(255,255,255,.95) !important; }
html[data-qbit-theme="light"] .quote-form label { color:#42546b; }
html[data-qbit-theme="light"] .quote-form input,
html[data-qbit-theme="light"] .quote-form select,
html[data-qbit-theme="light"] .quote-form textarea { color:#0b1628 !important; background:#f6f9fd !important; }
html[data-qbit-theme="light"] .service-picks span { color:#42546b; background:#f4f7fb; }
html[data-qbit-theme="light"] .home-footer { background:#edf3f9; }
html[data-qbit-theme="light"] .footer-grid strong { color:#243a54; }
html[data-qbit-theme="light"] .footer-grid p,
html[data-qbit-theme="light"] .footer-grid a,
html[data-qbit-theme="light"] .footer-grid span { color:#5e7289; }

/* Mobile = bottom dock only. No hamburger/dropdown. */
.nav-mobile-toggle,
.home-mobile-menu { display:none !important; }
.mobile-home-dock { display:none; }
@media (max-width:900px) {
  .home-nav-links { display:none !important; }
  .home-nav { top:8px; }
  .home-nav-inner { padding:9px 12px; border-radius:17px; }
  .home-nav-actions { gap:6px; }
  .home-nav-actions .staff-link { display:none; }
  .home-nav-actions .portal-priority { display:inline-flex; padding:8px 11px; font-size:.72rem; }
  .home-nav-actions .theme-btn { display:inline-flex; }
  .mobile-home-dock {
    display:flex !important;
    position:fixed;
    left:10px;
    right:10px;
    bottom:max(10px, env(safe-area-inset-bottom));
    z-index:1100;
    gap:4px;
    padding:7px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    border:1px solid var(--qborder);
    border-radius:20px;
    background:rgba(7,14,26,.92);
    backdrop-filter:blur(22px);
    box-shadow:0 22px 60px rgba(0,0,0,.35);
  }
  .mobile-home-dock::-webkit-scrollbar { display:none; }
  .mobile-home-dock a,
  .mobile-home-dock button {
    min-width:72px;
    flex:0 0 auto;
    border:0;
    background:transparent;
    color:#8fa0b9;
    text-decoration:none;
    border-radius:15px;
    padding:8px 7px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    font:700 .6rem/1.1 Inter,ui-sans-serif,system-ui,sans-serif;
    cursor:pointer;
  }
  .mobile-home-dock a i,
  .mobile-home-dock button i { font-size:1.03rem; line-height:1; }
  .mobile-home-dock a.is-active,
  .mobile-home-dock button:hover,
  .mobile-home-dock a:hover { color:#fff; background:rgba(37,132,255,.18); }
  html[data-qbit-theme="light"] .mobile-home-dock { background:rgba(255,255,255,.96); box-shadow:0 18px 50px rgba(20,42,72,.16); }
  html[data-qbit-theme="light"] .mobile-home-dock a,
  html[data-qbit-theme="light"] .mobile-home-dock button { color:#5c6e83; }
  html[data-qbit-theme="light"] .mobile-home-dock a.is-active,
  html[data-qbit-theme="light"] .mobile-home-dock button:hover,
  html[data-qbit-theme="light"] .mobile-home-dock a:hover { color:#0b1628; background:rgba(20,110,245,.10); }
  body.qbit-home { padding-bottom:98px !important; }
}

/* Fixed-nav target offset so sections are not hidden under the navbar. */
body.qbit-home main section[id] { scroll-margin-top:110px; }

/* Verify modal */
.qbit-verify-modal .modal-dialog { max-width:520px; }
.qbit-verify-modal .modal-content { border:1px solid var(--qborder); border-radius:26px; background:var(--qpanel-solid); color:var(--qtext); box-shadow:0 35px 100px rgba(0,0,0,.35); }
html[data-qbit-theme="light"] .qbit-verify-modal .modal-content { background:#fff; color:#0b1628; }
.qbit-verify-modal .btn-close { filter:var(--bs-btn-close-filter, none); }
.qbit-verify-modal .verify-modal-copy { color:var(--qmuted); line-height:1.7; }
.qbit-verify-modal .form-label { color:var(--qtext); font-weight:800; }
.verify-token-wrap { position:relative; }
.verify-token-wrap > i { position:absolute; left:15px; top:50%; transform:translateY(-50%); color:var(--qblue); pointer-events:none; z-index:2; }
.verify-token-wrap .form-control { padding-left:44px; min-height:52px; border-radius:15px; border:1px solid var(--qborder); background:var(--qinput); color:var(--qtext); }
.verify-token-wrap .form-control:focus { border-color:rgba(37,132,255,.65); box-shadow:0 0 0 4px rgba(37,132,255,.1); }
.verify-modal-hint { margin-top:12px; color:var(--qmuted); font-size:.78rem; }
.verify-modal-hint i { color:var(--qblue); margin-right:5px; }
.qbit-verify-modal .btn-close { opacity:.75; }
html[data-qbit-theme="light"] .qbit-verify-modal .btn-close { filter:none; }
html[data-qbit-theme="dark"] .qbit-verify-modal .btn-close { filter:invert(1) grayscale(1); }

@media (min-width:901px) {
  .home-nav-inner { gap:24px; }
  .home-nav-links {
    flex:1 1 auto;
    justify-content:center;
    align-items:center;
    gap:18px;
  }
  .home-nav-links a,
  .nav-verify-link {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:8px 8px;
    white-space:nowrap;
    font-size:.86rem;
    letter-spacing:.01em;
    border-radius:10px;
  }
  .nav-verify-link i { margin-right:6px; }
  .home-nav-actions { gap:8px; }
  .home-nav-actions .glass-btn.small { padding:9px 13px; font-size:.76rem; }
  .theme-btn { flex:0 0 42px; width:42px; height:42px; }
}

@media (min-width:901px) and (max-width:1120px) {
  .home-nav-inner { gap:14px; padding-left:13px; padding-right:13px; }
  .home-nav-links { gap:8px; }
  .home-nav-links a,
  .nav-verify-link { padding:7px 5px; font-size:.78rem; }
  .home-nav-actions .glass-btn.small { padding:8px 10px; font-size:.70rem; }
}
.work-media-placeholder{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:radial-gradient(circle at 50% 45%,rgba(37,132,255,.20),transparent 46%),linear-gradient(145deg,rgba(18,35,59,.95),rgba(5,12,22,.98));color:var(--qblue2)}
.work-media-placeholder i{font-size:3rem;filter:drop-shadow(0 0 20px rgba(37,132,255,.25))}.work-media-placeholder span{font-size:.64rem;letter-spacing:.18em;font-weight:900}
html[data-qbit-theme="light"] .work-media-placeholder{background:radial-gradient(circle at 50% 45%,rgba(20,110,245,.12),transparent 46%),linear-gradient(145deg,#eaf2fb,#dce8f5);color:#146ef5}
