:root{--bg:#030910;--panel:#07131e;--panel2:#0a1a28;--line:#183247;--blue:#0d6efd;--cyan:#25b9ff;--green:#71d000;--orange:#ffae00;--red:#ff3154;--text:#f4f8fc;--muted:#99aabc;--r:12px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 40% 0,#0a1c2b 0,transparent 35%),var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}.tool-shell{min-height:100vh;max-width:1500px;margin:auto;padding:18px}.tool-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(3,9,16,.94);backdrop-filter:blur(14px)}.tool-brand{display:flex;align-items:center;gap:10px}.tool-brand img{width:54px;height:48px;object-fit:contain}.tool-brand strong,.tool-brand span{display:block}.tool-brand strong{font-size:25px}.tool-brand span{font-size:10px;color:var(--cyan);letter-spacing:1px}.tool-nav{display:flex;gap:8px;flex-wrap:wrap}.tool-btn,.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border:1px solid #225276;border-radius:7px;background:#081724;color:#fff;text-decoration:none;cursor:pointer}.tool-btn.primary,.secondary{background:linear-gradient(#0b4aaa,#062a68);border-color:#0e4fb5}.tool-hero{margin:12px 0;padding:28px;border:1px solid #1d4c6d;border-radius:var(--r);background:linear-gradient(135deg,rgba(13,110,253,.20),rgba(113,208,0,.08)),#06131f}.tool-hero h1{margin:0 0 8px;font-size:clamp(27px,5vw,46px)}.tool-hero p{max-width:900px;color:#c5d2de;line-height:1.55}.notice{border-left:4px solid var(--orange);padding:12px 14px;background:#241a05;border-radius:7px;line-height:1.5}.tool-section{margin-top:12px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(145deg,rgba(7,21,33,.98),rgba(4,13,22,.98));overflow:hidden}.tool-section>header{padding:12px 15px;border-bottom:1px solid #15334a}.tool-section h2{margin:0;font-size:18px}.tool-content{padding:14px}.form-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px}.form-grid.compact{grid-template-columns:repeat(3,minmax(180px,1fr))}.form-grid label{display:flex;flex-direction:column;gap:6px;color:#c7d4df}.form-grid input,.form-grid select{width:100%;padding:10px;border:1px solid #27516b;border-radius:6px;background:#06111b;color:#fff}.results-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px}.result-box{padding:14px;border:1px solid #1b3d55;border-radius:8px;background:#091927}.result-box small,.result-box strong{display:block}.result-box small{color:var(--muted)}.result-box strong{margin-top:6px;font-size:22px;color:var(--green)}.result-explanation{margin:12px 0 0;padding:12px;border:1px solid #31516c;border-radius:8px;background:#091927;line-height:1.5}.status-ok{color:var(--green)}.status-warn{color:var(--orange)}.filter-bar{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:9px}.filter-bar input,.filter-bar select{padding:10px;border:1px solid #27516b;border-radius:6px;background:#06111b;color:white}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.tool-card{padding:14px;border:1px solid #1b3d55;border-radius:9px;background:#081724}.antenna-card-head{display:flex;gap:10px;align-items:center}.antenna-card-head>span{font-size:35px}.antenna-card h3{margin:2px 0}.antenna-card small{color:var(--cyan)}.antenna-card p{color:#bdcad5;min-height:42px}.antenna-card dl{margin:0 0 12px}.antenna-card dl div{display:grid;grid-template-columns:115px 1fr;gap:8px;padding:5px 0;border-bottom:1px solid #122b40}.antenna-card dt{color:var(--muted)}.antenna-card dd{margin:0}.recommend-row{display:grid;grid-template-columns:1fr auto;gap:5px 10px;padding:10px;border-bottom:1px solid #173148}.recommend-row small{grid-column:1/-1;color:var(--muted)}.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.guide-card{padding:15px;border:1px solid #1b3d55;border-radius:9px;background:#081724}.guide-card h3{margin-top:0;color:var(--cyan)}.guide-card p,.guide-card li{line-height:1.55;color:#c4d0dc}.swr-table{width:100%;border-collapse:collapse}.swr-table th,.swr-table td{border:1px solid #1b3d55;padding:9px;text-align:left}.swr-good{color:var(--green)}.swr-mid{color:var(--orange)}.swr-bad{color:var(--red)}.tool-hub{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hub-card{padding:18px;border:1px solid #1b3d55;border-radius:9px;background:#081724;color:white;text-decoration:none}.hub-card span{font-size:35px}.hub-card h3{margin:8px 0}.hub-card p{color:var(--muted)}.hub-card.ready{border-color:#2d7a39}.hub-card.soon{opacity:.72}.tool-footer{position:relative;margin-top:14px;padding:18px;text-align:center;color:#8293a4}.watermark{position:fixed;right:18px;bottom:12px;z-index:50;pointer-events:none;opacity:.22;font-weight:800;letter-spacing:1px;text-align:right}.watermark small{display:block;font-weight:500}.source-note{font-size:12px;color:#8fa3b5;line-height:1.5}@media(max-width:1000px){.form-grid{grid-template-columns:repeat(2,1fr)}.cards-grid,.tool-hub{grid-template-columns:repeat(2,1fr)}.results-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.tool-shell{padding:8px}.tool-topbar{position:static;align-items:flex-start;flex-direction:column}.tool-nav{width:100%}.tool-btn{flex:1}.tool-hero{padding:18px}.form-grid,.form-grid.compact,.filter-bar,.cards-grid,.results-grid,.guide-grid,.tool-hub{grid-template-columns:1fr}.antenna-card dl div{grid-template-columns:1fr}.watermark{font-size:11px}.recommend-row{grid-template-columns:1fr}}

.calculate-main{margin-top:12px;min-width:220px}.antenna-card{position:relative;padding-bottom:34px}.card-signature{position:absolute;right:10px;bottom:8px;font-size:10px;font-weight:800;letter-spacing:.8px;color:#7f95a8;opacity:.65}.band-detail-card{position:relative;min-height:150px}.band-detail-card strong{color:var(--green)}.radio-modal-actions{margin:10px 0}.radio-tool-chip{text-decoration:none;color:#fff}.radio-tool-chip:hover{border-color:var(--cyan)}
.compare-scroll{overflow-x:auto}.tool-table{width:100%;border-collapse:collapse;min-width:660px}.tool-table th,.tool-table td{padding:10px;border:1px solid #1b3d55;text-align:left}.tool-table th{background:#0a1a28;color:var(--cyan)}.selected-row{background:rgba(113,208,0,.10)}.recommendation-box{margin-top:14px;padding:16px;border:1px solid #2d7a39;border-radius:9px;background:#082116}.recommendation-box h3{margin-top:0;color:var(--green)}.coax-card{position:relative;padding-bottom:34px}.coax-card .rank{float:right;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#0d2c45;color:var(--cyan);font-weight:800}.coax-card dl div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #122b40}.coax-card dt{color:var(--muted)}.coax-card dd{margin:0}.coax-page-grid{grid-template-columns:repeat(4,minmax(150px,1fr)) auto}@media(max-width:1000px){.coax-page-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.coax-page-grid{grid-template-columns:1fr}}

/* ESTEPHIL 3.3.6 — relief coloré des outils radio */
.tool-topbar,.tool-hero,.tool-section{border-color:rgba(37,185,255,.64);box-shadow:0 0 0 1px rgba(37,185,255,.07),0 14px 38px rgba(0,0,0,.28),0 0 20px rgba(37,185,255,.06)}
.tool-section>header{border-bottom-color:rgba(37,185,255,.30)}
.tool-card,.guide-card,.hub-card,.result-box,.result-explanation,.recommend-row,.recommendation-box,.notice,.form-grid input,.form-grid select,.filter-bar input,.filter-bar select,.tool-table th,.tool-table td{border-color:rgba(37,185,255,.48)}
.antenna-calculator,.recommendation-box,.hub-card.ready{border-color:rgba(113,208,0,.66);box-shadow:0 0 0 1px rgba(113,208,0,.08),0 0 18px rgba(113,208,0,.07)}
.antenna-card,.coax-card,.band-detail-card,.guide-card{box-shadow:inset 0 0 14px rgba(37,185,255,.025),0 0 14px rgba(37,185,255,.045)}
.tool-card:hover,.hub-card:hover{border-color:rgba(113,208,0,.78);box-shadow:0 0 18px rgba(113,208,0,.09)}

/* ESTEPHIL 3.3.9 — continuité holographique des outils et calculateurs */
:root{--holo:#00c8ff;--holo-bright:#72e8ff;--holo-line:rgba(0,200,255,.72);--holo-soft:rgba(0,200,255,.15)}
html{background:#010711}
body{background:radial-gradient(circle at 52% -10%,rgba(0,122,205,.22),transparent 38%),linear-gradient(180deg,#020a14,#010711)}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.15;background:repeating-linear-gradient(180deg,transparent 0 3px,rgba(65,205,255,.025) 3px 4px)}
.tool-topbar,.tool-hero,.tool-section{
  border-color:var(--holo-line);
  background:linear-gradient(145deg,rgba(5,23,37,.97),rgba(2,10,19,.985));
  box-shadow:0 0 0 1px rgba(0,200,255,.07),0 14px 38px rgba(0,0,0,.32),0 0 20px rgba(0,182,255,.13);
}
.tool-section>header{border-bottom-color:rgba(0,200,255,.46);background:linear-gradient(90deg,rgba(0,115,190,.22),rgba(3,26,43,.14) 68%,transparent)}
.tool-section h2,.guide-card h3,.tool-card h3{color:var(--holo-bright);text-shadow:0 0 9px rgba(0,200,255,.2)}
.tool-card,.guide-card,.hub-card,.result-box,.result-explanation,.recommend-row,.recommendation-box,.notice,
.form-grid input,.form-grid select,.filter-bar input,.filter-bar select,.tool-table th,.tool-table td{
  border-color:rgba(0,190,250,.5);
  background-color:rgba(3,19,31,.82);
  box-shadow:inset 0 0 12px rgba(0,152,223,.035);
}
.antenna-calculator,.recommendation-box,.hub-card.ready{border-color:var(--holo-line);box-shadow:inset 0 0 14px rgba(0,152,223,.04),0 0 14px rgba(0,190,255,.1)}
.tool-btn,.secondary,.hub-card,.select-antenna,.use-recommendation{
  border-color:var(--holo-line);
  background:linear-gradient(180deg,rgba(7,53,87,.75),rgba(2,16,28,.96));
  box-shadow:inset 0 1px 0 rgba(199,246,255,.11),0 0 10px rgba(0,190,255,.07);
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
@media(hover:hover){
  .tool-btn:hover,.secondary:hover,.hub-card:hover,.select-antenna:hover,.use-recommendation:hover{
    border-color:#b2f3ff;
    background:linear-gradient(180deg,rgba(5,37,62,.94),rgba(1,11,21,.99));
    box-shadow:inset 0 1px 0 rgba(226,251,255,.2),0 0 18px rgba(0,200,255,.22);
    transform:translateY(-1px);
  }
}
.tool-btn:active,.secondary:active,.hub-card:active,.select-antenna:active,.use-recommendation:active{transform:translateY(1px);box-shadow:inset 0 2px 9px rgba(0,0,0,.46)}
.tool-btn:focus-visible,.secondary:focus-visible,.hub-card:focus-visible,.select-antenna:focus-visible,.use-recommendation:focus-visible,
.form-grid input:focus-visible,.form-grid select:focus-visible,.filter-bar input:focus-visible,.filter-bar select:focus-visible{outline:2px solid #baf5ff;outline-offset:2px}
.form-grid input:focus,.form-grid select:focus,.filter-bar input:focus,.filter-bar select:focus{border-color:var(--holo-bright);box-shadow:0 0 13px rgba(0,200,255,.15)}
@media(max-width:650px){
  body::before{opacity:.08}
  .tool-shell{padding:7px}
  .tool-topbar,.tool-hero,.tool-section{box-shadow:0 0 0 1px rgba(0,200,255,.055),0 0 10px rgba(0,174,255,.09)}
}
@media(prefers-reduced-motion:reduce){.tool-btn,.secondary,.hub-card,.select-antenna,.use-recommendation{transition:none}}

/* ESTEPHIL 3.3.10 — guide long-fil et balun */
.wire-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.wire-diagram{display:grid;grid-template-columns:1fr auto 1fr auto 1.35fr;gap:12px;align-items:center}
.wire-node{min-height:116px;padding:16px;border:1px solid rgba(0,200,255,.54);border-radius:9px;background:rgba(3,19,31,.82);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:inset 0 0 18px rgba(0,152,223,.04),0 0 14px rgba(0,190,255,.08)}
.wire-node.accent{border-color:#72e8ff;box-shadow:inset 0 0 18px rgba(0,152,223,.07),0 0 20px rgba(0,200,255,.15)}
.wire-node span{font-size:32px;color:#72e8ff}.wire-node b{margin-top:8px}.wire-node small{margin-top:5px;color:var(--muted)}
.wire-arrow{color:#72e8ff;font-size:25px;text-align:center}.wire-arrow small{display:block;font-size:10px;color:var(--muted)}
.safety-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.danger-note{border-left-color:var(--red);background:rgba(48,5,18,.72)}
.source-note a{color:#72e8ff}
@media(max-width:850px){.wire-choice-grid{grid-template-columns:1fr}.wire-diagram{grid-template-columns:1fr}.wire-arrow{transform:rotate(90deg)}.safety-grid{grid-template-columns:1fr}}

/* ESTEPHIL 3.3.15 — signature cohérente dans chaque module */
.tool-section,
.result-box,
.result-explanation,
.recommendation-box,
.recommend-row,
.guide-card,
.wire-node,
.notice,
.conversion-help,
.wire-choice-grid .tool-card{
  position:relative;
}
.tool-section{padding-bottom:28px}
.result-box,
.result-explanation,
.recommendation-box,
.recommend-row,
.guide-card,
.wire-node,
.notice,
.conversion-help,
.wire-choice-grid .tool-card{padding-bottom:32px}
.tool-section::after,
.result-box::after,
.result-explanation::after,
.recommendation-box::after,
.guide-card::after,
.wire-node::after,
.notice::after,
.wire-choice-grid .tool-card::after{
  content:"ESTEPHIL.COM";
  position:absolute;
  right:10px;
  bottom:7px;
  z-index:1;
  pointer-events:none;
  font-size:10px;
  font-weight:800;
  line-height:1;
  letter-spacing:.8px;
  color:#7f95a8;
  opacity:.72;
}
.recommend-row .card-signature,
.conversion-help .card-signature{right:10px;bottom:8px}
.recommend-row .card-signature{display:none}
.recommend-row::after{
  content:"ESTEPHIL.COM";
  position:absolute;
  right:10px;
  bottom:7px;
  z-index:2;
  pointer-events:none;
  font-size:10px;
  font-weight:800;
  line-height:1;
  letter-spacing:.8px;
  color:#7f95a8;
  opacity:.72;
}
.watermark{display:none!important}
@media(max-width:650px){
  .tool-section{padding-bottom:26px}
  .result-box,.result-explanation,.recommendation-box,.recommend-row,.guide-card,.wire-node,.notice,.conversion-help,.wire-choice-grid .tool-card{padding-bottom:30px}
  .tool-section::after,.result-box::after,.result-explanation::after,.recommendation-box::after,.recommend-row::after,.guide-card::after,.wire-node::after,.notice::after,.wire-choice-grid .tool-card::after{font-size:9px}
}

/* ESTEPHIL 3.3.16 — résultats PIRE et TOS */
.antenna-results{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){.antenna-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.antenna-results{grid-template-columns:1fr}}

/* ESTEPHIL 3.3.22 — partage léger et responsive */
.share-launcher{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));z-index:96;min-height:44px;padding:8px 14px;border:1px solid #72e8ff;border-radius:999px;background:linear-gradient(180deg,rgba(7,67,108,.96),rgba(2,18,31,.98));box-shadow:0 0 20px rgba(0,200,255,.22),inset 0 1px 0 rgba(220,250,255,.18);color:#fff;display:flex;align-items:center;gap:8px;cursor:pointer}.share-launcher span{font-size:20px;color:#72e8ff}.share-launcher:hover{filter:brightness(1.12);transform:translateY(-1px)}.share-layer[hidden]{display:none}.share-layer{position:fixed;inset:0;z-index:180;display:grid;place-items:center;padding:16px}.share-backdrop{position:absolute;inset:0;border:0;background:rgba(0,4,9,.82);backdrop-filter:blur(6px)}.share-dialog{position:relative;z-index:1;width:min(620px,100%);border:1px solid rgba(0,200,255,.82);border-radius:14px;background:linear-gradient(145deg,#071c2b,#020b14);box-shadow:0 30px 100px #000,0 0 32px rgba(0,200,255,.18);overflow:hidden}.share-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(0,200,255,.38);background:linear-gradient(90deg,rgba(0,129,205,.25),transparent)}.share-dialog h2{margin:2px 0 0;font-size:20px}.share-dialog header small{color:#72e8ff;letter-spacing:1px}.share-close{border:0;background:transparent;color:#fff;font-size:30px;cursor:pointer}.share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px}.share-grid button{min-height:72px;padding:10px;border:1px solid rgba(0,190,250,.58);border-radius:9px;background:linear-gradient(180deg,rgba(7,53,87,.78),rgba(2,16,28,.96));color:#fff;display:flex;align-items:center;gap:11px;text-align:left;cursor:pointer}.share-grid button:hover{border-color:#b2f3ff;background:linear-gradient(180deg,rgba(5,37,62,.96),rgba(1,11,21,.99));transform:translateY(-1px)}.share-grid i{width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:#0c3654;display:grid;place-items:center;font-style:normal;font-size:19px;color:#72e8ff}.share-grid b,.share-grid small{display:block}.share-grid small{margin-top:3px;color:#9fb2c2}.share-status{min-height:20px;margin:0;padding:0 14px 14px;color:#8de6ff}.share-open{overflow:hidden}@media(max-width:520px){.share-launcher{width:46px;height:46px;padding:0;justify-content:center}.share-launcher b{display:none}.share-layer{align-items:end;padding:0}.share-dialog{width:100%;border-radius:16px 16px 0 0;padding-bottom:env(safe-area-inset-bottom)}.share-grid{grid-template-columns:1fr 1fr;gap:7px;padding:10px}.share-grid button{min-height:66px;padding:8px}.share-grid small{font-size:10px}}
