/* Qvert Module approved metallic treatment — QA5.1 */
:root{
  --qm-bg:#080d11;--qm-bg2:#0b1217;--qm-line:#34434e;--qm-cyan:#83bad1;
  --qm-silver-a:#e4e7e8;--qm-silver-b:#c9ced1;--qm-silver-c:#b8bec2;
  --qm-ink:#10253a;--qm-input:#0d151b;--qm-input2:#101b22;--qm-input-text:#6f9bb8;
}
html,body{background:linear-gradient(180deg,var(--qm-bg),var(--qm-bg2))!important;color:#d9dde0!important}
body{position:relative!important;min-height:100vh!important;padding-bottom:0!important}
body:before,body:after{content:"";position:fixed;pointer-events:none;z-index:0;border:1px solid rgba(119,157,178,.16);border-radius:50%;background:radial-gradient(ellipse 18% 49% at 50% 50%,transparent 48%,rgba(119,157,178,.16) 49%,rgba(119,157,178,.16) 50%,transparent 51%),radial-gradient(ellipse 49% 18% at 50% 50%,transparent 48%,rgba(119,157,178,.16) 49%,rgba(119,157,178,.16) 50%,transparent 51%);opacity:.45}
body:before{width:340px;height:340px;right:-195px;top:135px}body:after{width:290px;height:290px;left:-175px;bottom:110px}.container-qr,main,.site-header,.site-footer{position:relative;z-index:1}
.qvert-header{position:relative!important;top:auto!important;background:rgba(7,13,17,.96)!important;border:0!important;border-bottom:1px solid var(--qm-line)!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;padding:16px 18px!important}
.qvert-header .brand-mark{border:1px solid #3d4e59!important;box-shadow:none!important;background:#0a1116!important}
.qvert-header .qvert-title{color:#f2f2ee!important;text-shadow:none!important}.qvert-header .qvert-title span{color:var(--qm-cyan)!important}.qvert-header .brand-sub,.qvert-header .header-description{color:#d0d2d0!important}.qvert-header .pill,.qvert-header .launch-pill,.qm-module-rail .pill,.qm-module-rail .launch-pill{background:#161c21!important;border:1px solid #48535b!important;color:#e7e7e3!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;border-radius:4px!important}.qvert-header .pill strong,.qvert-header .launch-pill strong,.qm-module-rail .pill strong,.qm-module-rail .launch-pill strong{color:#a6d4e5!important}
.qvert-panel{background:transparent!important;border:0!important;box-shadow:none!important;padding-top:14px!important}
/* Matte metallic silver content surfaces */
.template-card,.utility-card,.batch-wrap,.wifi-form-group,.config-list-item,.learning-content,.learning-sidebar,.detection-section,.stat-card,.stat-box,.module-card,.feature,.principle,.card,.tool-card,.wrapper-card,.scanner-card,.subnet-card,.panel,.info-card,
.qvert-section>.hero,.qvert-section>.section-card,.qvert-section>.content-card{
  background:linear-gradient(105deg,var(--qm-silver-a) 0%,#d7dbdd 38%,var(--qm-silver-b) 72%,#dfe2e3 100%)!important;
  border:1px solid #9da6ac!important;border-radius:14px!important;color:var(--qm-ink)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),inset 0 -1px 0 rgba(69,81,88,.20),0 7px 16px rgba(0,0,0,.18)!important
}
.template-card h1,.template-card h2,.template-card h3,.template-card h4,.template-card h5,.template-card h6,.template-card .t-title,
.utility-card h1,.utility-card h2,.utility-card h3,.utility-card h4,.utility-card h5,.utility-card h6,.batch-wrap h1,.batch-wrap h2,.batch-wrap h3,
.panel h1,.panel h2,.panel h3,.panel h4,.info-card h3,.section-title,.title{color:var(--qm-ink)!important}
.template-card p,.template-card .t-desc,.utility-card p,.batch-wrap p,.panel p,.small-help,.context,.stat-label,.info-card p{color:#29465f!important}
.template-card .t-badge,.tech-pill,.badge,.pill-lite{background:#d7dcdf!important;color:#18364d!important;border:1px solid #7f97a7!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important}
/* Approved dark input screens: brighter blue-gray, +1px, semibold. */
.qvert-io,select.input-like,input[type=text],input[type=search],input[type=url],input[type=email],input[type=number],textarea,.command-input,.output-box,.result-box,.display-box,.screen-box,.bin-box,.log-container,#bash-output{
  background:linear-gradient(180deg,var(--qm-input) 0%,var(--qm-input2) 100%)!important;
  color:var(--qm-input-text)!important;border:2px solid #293943!important;border-radius:5px!important;
  font-size:14px!important;font-weight:600!important;line-height:1.35!important;text-shadow:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 1px 0 rgba(255,255,255,.16)!important
}
/* Placeholder/example text must remain visually distinct from entered values. */
.qvert-io::placeholder,input::placeholder,textarea::placeholder,.command-input::placeholder{
  color:#89939a!important;
  opacity:.58!important;
  font-weight:400!important;
  font-style:italic!important;
}
.qvert-io:focus,input:focus,textarea:focus,select:focus,.command-input:focus{outline:none!important;border-color:#668da6!important;box-shadow:0 0 0 2px rgba(104,145,170,.16)!important}
.action-btn{background:linear-gradient(180deg,#171d21,#0c1115)!important;color:#f0ede6!important;border:1px solid #3f4b53!important;border-radius:4px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}.action-btn.secondary,.sym-btn{background:linear-gradient(180deg,#e4e7e8,#cbd0d3)!important;color:#10253a!important;border:1px solid #8499a8!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important}.action-btn:hover,.action-btn.secondary:hover,.sym-btn:hover{border-color:#729bb4!important;box-shadow:none!important}.action-btn.danger{background:linear-gradient(180deg,#ef493f,#d52d25)!important;color:white!important;border-color:#c9251d!important}
.qvert-tabs{border-color:#394852!important}.qvert-tabs .tab{background:#151c21!important;border:1px solid #44515a!important;color:#e1e1dd!important;border-radius:4px!important;box-shadow:none!important}.qvert-tabs .tab.active{background:#202a31!important;color:#9dcee1!important;border-color:#6e97ad!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important}
/* Full module footer */
.footer.qm-footer,.site-footer.qm-footer{position:relative!important;bottom:auto!important;background:#090f13!important;border-top:1px solid #46545d!important;color:#c9cdcf!important;box-shadow:none!important;padding:18px 26px 12px!important;margin-top:16px!important;width:100%!important;max-width:none!important;align-self:stretch!important;box-sizing:border-box!important}.qm-footer-main{display:grid;grid-template-columns:1.05fr 1.35fr auto;gap:28px;align-items:center;max-width:1180px;width:100%;margin:0 auto 14px}.qm-footer-brand{display:flex;align-items:center;gap:12px}.qm-footer-brand img{width:52px;height:52px;object-fit:contain}.qm-footer-brand strong{display:block;color:#e7e7e2;font-size:.95rem}.qm-footer-brand span{display:block;color:#aeb5b9;font-size:.78rem;margin-top:3px}.qm-footer-copy{font-size:.78rem;line-height:1.45;color:#aeb5b9;text-align:center}.qm-footer-links{display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-end}.qm-footer a{color:#7fb1ca!important;text-decoration:none!important}.qm-footer a:hover{color:#b9deed!important}.qm-footer-bottom{border-top:1px solid #252e34;padding-top:11px;text-align:center;color:#858e93;font-size:.72rem;max-width:1180px;width:100%;margin:0 auto}
/* About page keeps parent nav but joins module material system */
body .site-header{background:#090f13!important;border-bottom:1px solid #34434e!important}.about-lockup img{background:transparent!important;border:0!important;box-shadow:none!important;object-fit:contain!important}.page-hero{background:#0b1217!important}.page-hero h1,.page-hero .eyebrow,.breadcrumb,.breadcrumb a{color:#dfe3e5!important}.page-hero p{color:#b8c1c6!important}.about-list .info-card{background:linear-gradient(105deg,var(--qm-silver-a),var(--qm-silver-b))!important}
@media(max-width:768px){body:before{width:180px;height:180px;right:-105px;top:90px}body:after{width:150px;height:150px;left:-90px;bottom:80px}.qvert-header{padding:12px!important}.qm-footer-main{grid-template-columns:1fr;text-align:center;gap:14px}.qm-footer-brand{justify-content:center}.qm-footer-links{justify-content:center}.qm-footer-copy{text-align:center}.template-card,.utility-card,.batch-wrap{border-radius:11px!important}.qvert-io,input,textarea,select{font-size:14px!important}}

/* QA5.6 — Module header uses the same Qvert parent-brand lockup as qvert.net. */
.qvert-header .brand-left{display:flex!important;align-items:center!important;min-width:max-content!important}
.qm-parent-brand{
  display:inline-flex!important;
  align-items:center!important;
  gap:11px!important;
  min-width:0!important;
  color:inherit!important;
  text-decoration:none!important;
}
.qm-parent-mark{
  width:42px!important;
  height:42px!important;
  object-fit:cover!important;
  border:1px solid #34434e!important;
  border-radius:50%!important;
  background:#080a0c!important;
  box-shadow:none!important;
  flex:0 0 42px!important;
}
.qm-parent-copy{display:block!important;min-width:0!important}
.qm-parent-word{
  display:block!important;
  color:#f2f2ee!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:1.1rem!important;
  font-weight:850!important;
  letter-spacing:-.03em!important;
  line-height:1.05!important;
  text-transform:none!important;
  text-shadow:none!important;
}
.qm-parent-kicker{
  display:block!important;
  margin-top:4px!important;
  color:#a8adaa!important;
  font:700 .65rem/1.1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
@media(max-width:768px){
  .qvert-header{align-items:flex-start!important}
  .qvert-header .brand-left{width:100%!important}
  .qm-parent-word{font-size:1rem!important}
  .qm-parent-kicker{font-size:.58rem!important}
}

/* QA5.10 — hard mobile viewport contract. Prevent the Module shell from
   becoming a scaled desktop canvas on phones and keep the footer full-width. */
html{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
.container-qr,.qvert-header,.qvert-panel,.qvert-section,.qm-module-frame,.qm-module-rail{box-sizing:border-box!important;min-width:0!important;max-width:100%!important}
img,svg,video{max-width:100%;height:auto}

@media(max-width:768px){
  body{min-width:0!important}
  .container-qr{width:100%!important;max-width:100%!important;margin:0!important;padding:8px 8px 0!important;overflow-x:hidden!important}
  .qvert-header{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important}
  .qvert-header .brand-left{width:100%!important;min-width:0!important;max-width:100%!important;flex:0 1 auto!important}
  .qm-parent-brand{width:100%!important;max-width:100%!important;min-width:0!important}
  .qm-parent-copy{min-width:0!important;max-width:calc(100% - 52px)!important}
  .qm-parent-kicker{white-space:normal!important;overflow-wrap:anywhere!important}
  .header-right,.header-description,.qm-header-status{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;text-align:left!important}
  .qm-header-status{display:flex!important;flex-wrap:wrap!important;gap:5px!important}
  .qm-header-status .pill{max-width:100%!important;white-space:normal!important}

  .qm-module-frame{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .qm-module-rail{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;margin:0 0 8px!important}
  .qm-module-rail .header-badges{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding-bottom:2px}
  .qm-module-rail .pill{flex:0 0 auto!important;width:auto!important;max-width:none!important;white-space:nowrap!important}

  .qvert-panel{width:100%!important;max-width:100%!important;min-width:0!important;padding:8px!important;overflow-x:hidden!important}
  .qvert-section,#qvert-home,.home-shell,.launch-section,.command-deck,.newtool-grid,.category-grid,.launch-grid-v1,.hero-stats,.utility-grid,.template-grid{width:100%!important;max-width:100%!important;min-width:0!important}
  .command-deck,.newtool-grid,.category-grid,.launch-grid-v1,.hero-stats,.utility-grid,.template-grid{grid-template-columns:minmax(0,1fr)!important}
  .command-card,.spotlight-card,.launch-card,.category-card,.newtool-card,.home-hero,.template-card,.utility-card{width:100%!important;max-width:100%!important;min-width:0!important;align-self:stretch!important}
  .newtool-card p{min-height:0!important}
  .action-btn,.tool-btn,.newtool-card button{max-width:100%!important;white-space:normal!important}

  .qvert-tabs{display:flex!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .qvert-tabs .tab{flex:0 0 auto!important;min-width:104px!important;max-width:76vw!important}

  .footer.qm-footer,.site-footer.qm-footer{width:100vw!important;max-width:100vw!important;min-width:0!important;margin:12px calc(50% - 50vw) 0!important;padding:16px 14px 12px!important;align-self:stretch!important;overflow:hidden!important}
  .qm-footer-main{width:100%!important;max-width:100%!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;margin:0 auto 12px!important;padding:0!important}
  .qm-footer-brand,.qm-footer-copy,.qm-footer-links,.qm-footer-bottom{width:100%!important;max-width:100%!important;min-width:0!important}
  .qm-footer-brand{justify-content:center!important}
  .qm-footer-copy{text-align:center!important;overflow-wrap:anywhere!important}
  .qm-footer-links{justify-content:center!important;gap:12px!important}
  .qm-footer-bottom{margin:0!important}
}

@media(max-width:420px){
  .container-qr{padding-left:6px!important;padding-right:6px!important}
  .qvert-header{padding:10px!important}
  .qvert-panel{padding:6px!important}
  .qm-parent-word{font-size:.98rem!important}
  .qm-parent-kicker{font-size:.55rem!important;letter-spacing:.055em!important}
  .qvert-tabs .tab{min-width:96px!important;padding:8px 9px!important;font-size:.78rem!important}
  .footer.qm-footer,.site-footer.qm-footer{padding-left:12px!important;padding-right:12px!important}
}

/* Module home rail contains Module navigation only; parent-site links stay out. */
body.qm-module-home .qm-module-rail a.pill[href="/products/"],
body.qm-module-home .qm-module-rail a.pill[href="/wiki/"],
body.qm-module-home .qm-module-rail a.pill[href="/services/"],
body.qm-module-home .qm-module-rail a.pill[href="/module/about"]{display:none!important}


/* Module home density pass — reduce the wall-of-cards effect. */
body.qm-module-home .qvert-panel{padding:10px 12px!important}
body.qm-module-home .home-shell{gap:10px!important}
body.qm-module-home .home-hero{
  padding:14px 16px!important;
  border:1px solid rgba(119,157,178,.10)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(14,22,28,.46),rgba(10,17,22,.18))!important;
  box-shadow:none!important
}
body.qm-module-home .home-title{margin:5px 0 0!important;font-size:clamp(1.45rem,2.5vw,2rem)!important;line-height:1.08!important}
body.qm-module-home .command-deck{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr)!important;gap:10px!important}
body.qm-module-home .command-card,
body.qm-module-home .spotlight-card{
  padding:12px!important;border:1px solid rgba(119,157,178,.12)!important;border-radius:9px!important;
  background:rgba(16,24,30,.34)!important;box-shadow:none!important
}
body.qm-module-home .command-title,
body.qm-module-home .section-title{margin-bottom:7px!important}
body.qm-module-home .command-help{margin-top:6px!important}
body.qm-module-home .quick-chip-row{gap:6px!important;margin-top:8px!important}
body.qm-module-home .quick-chip{padding:5px 9px!important;border-width:1px!important;box-shadow:none!important}
body.qm-module-home .spotlight-list{gap:6px!important}
body.qm-module-home .spotlight-item{
  padding:9px 10px!important;border:1px solid rgba(119,157,178,.10)!important;border-radius:7px!important;
  background:rgba(8,14,18,.22)!important;box-shadow:none!important
}
body.qm-module-home .launch-section{gap:7px!important}
body.qm-module-home .launch-grid-v1{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
body.qm-module-home .launch-card{
  gap:6px!important;padding:10px 11px!important;border:1px solid rgba(119,157,178,.12)!important;
  border-radius:8px!important;background:rgba(16,24,30,.30)!important;box-shadow:none!important
}
body.qm-module-home .launch-card:after{opacity:.28!important}
body.qm-module-home .launch-d{min-height:0!important;font-size:.78rem!important;line-height:1.28!important}
body.qm-module-home .launch-meta{gap:4px!important}
body.qm-module-home .launch-pill{padding:2px 6px!important;border-width:1px!important;box-shadow:none!important}
body.qm-module-home .launch-card .action-btn{margin-top:auto!important;padding:7px 9px!important}
body.qm-module-home .category-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
body.qm-module-home .category-card,
body.qm-module-home .newtool-card{
  padding:10px 11px!important;border:1px solid rgba(119,157,178,.10)!important;border-radius:8px!important;
  background:rgba(16,24,30,.22)!important;box-shadow:none!important
}
body.qm-module-home .category-desc{margin-top:4px!important;line-height:1.28!important}
body.qm-module-home .category-card button,
body.qm-module-home .newtool-card .action-btn{margin-top:8px!important;padding:7px 9px!important}
body.qm-module-home .newtool-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
body.qm-module-home .newtool-card p{min-height:0!important;line-height:1.28!important}
body.qm-module-home .qm-module-rail{
  padding:6px!important;border-color:rgba(119,157,178,.10)!important;background:rgba(10,16,21,.24)!important
}
body.qm-module-home .qm-module-rail .header-badges{gap:4px!important}
body.qm-module-home .qm-module-rail .pill{padding:5px 7px!important;border-color:rgba(119,157,178,.14)!important;box-shadow:none!important}

@media(max-width:1180px){
  body.qm-module-home .launch-grid-v1{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.qm-module-home .command-deck{grid-template-columns:1fr!important}
}
@media(max-width:768px){
  body.qm-module-home .qvert-panel{padding:6px!important}
  body.qm-module-home .home-shell{gap:8px!important}
  body.qm-module-home .home-hero{padding:11px 12px!important}
  body.qm-module-home .launch-grid-v1,
  body.qm-module-home .category-grid,
  body.qm-module-home .newtool-grid{grid-template-columns:minmax(0,1fr)!important;gap:6px!important}
  body.qm-module-home .launch-card,
  body.qm-module-home .category-card,
  body.qm-module-home .newtool-card{padding:9px 10px!important}
}


/* Module home tile edges — fade the card boundaries into the workspace instead of hard boxing them. */
body.qm-module-home #qvert-home .command-card,
body.qm-module-home #qvert-home .category-card,
body.qm-module-home #qvert-home .newtool-card{
  border:1px solid transparent!important;
  background:
    linear-gradient(105deg,rgba(214,220,224,.94) 0%,rgba(199,207,212,.92) 48%,rgba(188,198,204,.90) 100%) padding-box,
    linear-gradient(118deg,
      rgba(143,190,212,.18) 0%,
      rgba(143,190,212,.08) 24%,
      rgba(8,13,17,.015) 52%,
      rgba(143,190,212,.07) 76%,
      rgba(8,13,17,.01) 100%) border-box!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -1px 0 rgba(17,35,46,.035),
    0 5px 14px rgba(0,0,0,.055)!important;
}

body.qm-module-home #qvert-home .command-card:hover,
body.qm-module-home #qvert-home .command-card:focus-within,
body.qm-module-home #qvert-home .category-card:hover,
body.qm-module-home #qvert-home .category-card:focus-within,
body.qm-module-home #qvert-home .newtool-card:hover,
body.qm-module-home #qvert-home .newtool-card:focus-within{
  border-color:transparent!important;
  background:
    linear-gradient(105deg,rgba(217,224,228,.95) 0%,rgba(201,210,215,.93) 48%,rgba(191,201,207,.91) 100%) padding-box,
    linear-gradient(118deg,
      rgba(143,205,232,.24) 0%,
      rgba(143,205,232,.10) 26%,
      rgba(8,13,17,.015) 54%,
      rgba(143,205,232,.09) 78%,
      rgba(8,13,17,.01) 100%) border-box!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.34),
    0 6px 16px rgba(0,0,0,.065)!important;
}

/* With the introductory hero removed, keep the launcher tight to the Home tab. */
body.qm-module-home #qvert-home .home-shell{gap:8px!important}
body.qm-module-home #qvert-home .command-deck{margin-top:0!important}
