/* Page publique /outil-drone : styles de l'outil complet (repris de faisabilite-drone.html).
   Les parties communes de la page (en-tête, agence, avertissements) sont dans tournage.css. */
.dr-tool *{box-sizing:border-box}
.dr-tool button,.dr-tool input,.dr-tool select{font:inherit;color:inherit}
.dr-tool{color:#090510}
.dr-tool{
      --ink:#090510; --ink2:#2a1f40; --muted:rgba(9,5,16,.6); --line:rgba(150,103,224,.18);
      --vio:#9667E0; --lav:#D4BBFC; --pale:#F6F1FC; --snow:#FBFAFF;
      --vert:#1F9D63; --vert-bg:#E7F7EF; --orange:#D9822B; --orange-bg:#FFF2E3; --rouge:#D2453B; --rouge-bg:#FDECEA; --gris:#6F6A7A; --gris-bg:#F0EEF3;
    }


    /* Mise en page */
    .dr-main{max-width:1120px;margin:0 auto;padding:0;display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:20px;align-items:start}
    .dr-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 50px rgba(9,5,16,.08)}

    /* Formulaire */
    .dr-form{padding:20px}
    .dr-field{margin-bottom:16px}
    .dr-label{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;font-weight:700;margin-bottom:7px}
    .dr-label small{font-weight:500;color:var(--muted)}
    .dr-input,.dr-select{width:100%;padding:12px 14px;border:1.5px solid rgba(150,103,224,.25);border-radius:12px;background:var(--snow);outline:none}
    .dr-input:focus,.dr-select:focus{border-color:var(--vio);background:#fff}
    .dr-addr{position:relative}
    .dr-addr__btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:9px;background:transparent;color:#7040C0;cursor:pointer;display:grid;place-items:center}
    .dr-addr__btn:hover{background:var(--pale)}
    .dr-addr .dr-input{padding-right:46px}
    .dr-sugg{position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 6px);margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 36px rgba(9,5,16,.14)}
    .dr-sugg[hidden]{display:none}
    .dr-sugg li{padding:9px 11px;border-radius:9px;cursor:pointer;font-size:.92rem}
    .dr-sugg li:hover,.dr-sugg li.is-on{background:var(--pale)}
    .dr-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
    .dr-range{width:100%;accent-color:var(--vio)}
    .dr-chips{display:flex;flex-wrap:wrap;gap:6px}
    .dr-chip{position:relative}
    .dr-chip input{position:absolute;opacity:0;width:1px;height:1px}
    .dr-chip span{display:inline-block;padding:8px 12px;border-radius:999px;border:1.5px solid rgba(150,103,224,.28);font-size:.85rem;font-weight:600;cursor:pointer;background:#fff}
    .dr-chip input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
    .dr-chip input:focus-visible+span{outline:2px solid var(--vio);outline-offset:2px}
    .dr-check{display:flex;gap:9px;align-items:flex-start;font-size:.88rem;cursor:pointer}
    .dr-check input{margin-top:3px;accent-color:var(--vio)}
    .dr-go{width:100%;padding:15px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--vio),var(--lav));color:var(--ink);font-weight:800;font-size:1rem;cursor:pointer;box-shadow:0 10px 28px rgba(150,103,224,.4)}
    .dr-go:disabled{opacity:.6;cursor:wait}
    .dr-hint{margin:10px 0 0;font-size:12px;color:var(--muted);line-height:1.5}
    /* Deux boutons l'un sous l'autre, pleine largeur : la colonne du formulaire est étroite. */
    .dr-duo{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px}
    .dr-alt{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:50px;padding:0 18px;border:1.5px solid rgba(9,5,16,.85);border-radius:999px;background:#fff;font-weight:700;font-size:.95rem;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
    .dr-alt svg{flex:0 0 auto;width:19px;height:19px}
    .dr-alt:hover{background:var(--ink);color:#fff}
    .dr-alt:focus-visible{outline:3px solid var(--vio);outline-offset:2px}
    .dr-alt:disabled{opacity:.6;cursor:wait}
    #dr-libre{border-color:var(--vert);color:#17784b;background:var(--vert-bg)}
    #dr-libre:hover{background:var(--vert);color:#fff}
    .dr-reglages{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
    .dr-reglages summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 10px;cursor:pointer;list-style:none;font-weight:800;font-size:.92rem;padding:4px 0 8px}
    .dr-reglages summary::-webkit-details-marker{display:none}
    .dr-reglages summary span::after{content:" ▾";color:var(--vio)}
    .dr-reglages[open] summary span::after{content:" ▴"}
    .dr-reglages summary small{font-weight:600;color:var(--muted);font-size:.8rem}
    .dr-libre{padding:20px;border-radius:20px;border:2px solid var(--vert);background:var(--vert-bg);display:grid;gap:8px}
    .dr-libre h2{margin:0;font-size:1.4rem;font-weight:900}

    /* Carte */
    .dr-mapcard{overflow:hidden}
    .dr-map{height:430px;background:#e9e6ef}
    .dr-legend{display:flex;flex-wrap:wrap;gap:6px 14px;padding:12px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--ink2)}
    .dr-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}

    /* Verdict */
    .dr-out{grid-column:1 / -1;display:grid;gap:16px}
    .dr-verdict{padding:22px;border-radius:20px;border:2px solid;display:grid;gap:8px}
    .dr-verdict--vert{background:var(--vert-bg);border-color:var(--vert)}
    .dr-verdict--orange{background:var(--orange-bg);border-color:var(--orange)}
    .dr-verdict--rouge{background:var(--rouge-bg);border-color:var(--rouge)}
    .dr-verdict--gris{background:var(--gris-bg);border-color:var(--gris)}
    .dr-verdict__k{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
    .dr-verdict h2{margin:0;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:900;letter-spacing:-.02em}
    .dr-verdict__meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.92rem;color:var(--ink2)}
    .dr-verdict__meta b{color:var(--ink)}
    .dr-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
    .dr-btn{padding:10px 16px;border-radius:999px;border:1.5px solid var(--ink);background:#fff;font-weight:700;font-size:.88rem;cursor:pointer;text-decoration:none;color:var(--ink)}
    .dr-btn:hover{background:var(--ink);color:#fff}
    .dr-sec{padding:20px}
    .dr-sec h3{margin:0 0 12px;font-size:1.05rem;font-weight:800}
    .dr-steps{margin:0;padding-left:20px;display:grid;gap:10px;line-height:1.55}
    .dr-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
    .dr-item{display:grid;grid-template-columns:12px 1fr;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px}
    .dr-dot{width:12px;height:12px;border-radius:50%;margin-top:5px}
    .dr-dot--rouge{background:var(--rouge)} .dr-dot--orange{background:var(--orange)} .dr-dot--vert{background:var(--vert)} .dr-dot--info{background:#B9A9D6} .dr-dot--gris{background:var(--gris)}
    .dr-item__t{font-weight:700}
    .dr-item__d{margin:3px 0 0;font-size:.9rem;color:var(--ink2);line-height:1.5}
    .dr-item__m{margin:6px 0 0;font-size:.82rem;color:var(--muted);line-height:1.5}
    .dr-item__m em{font-style:normal;font-weight:600;color:var(--ink2)}
    .dr-tag{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--pale);font-size:10px;font-weight:700;color:#7040C0;vertical-align:1px}
    .dr-remind{padding:18px 20px;border-radius:20px;background:var(--ink);color:var(--snow)}
    .dr-remind ul{margin:0;padding-left:18px;display:grid;gap:8px;line-height:1.55;color:rgba(235,217,252,.85)}
    .dr-remind a{color:var(--lav)}
    .dr-src{font-size:12px;color:var(--muted);line-height:1.6;padding:0 4px}
    .dr-loading{display:flex;align-items:center;gap:10px;padding:18px 20px;font-weight:600}
    .dr-spin{width:18px;height:18px;border-radius:50%;border:3px solid var(--lav);border-top-color:var(--vio);animation:dr-s 1s linear infinite}
    @keyframes dr-s{to{transform:rotate(360deg)}}
    .dr-empty{padding:22px;color:var(--muted);line-height:1.6}


    @media (max-width:900px){
      .dr-main{grid-template-columns:minmax(0,1fr)}
      .dr-map{height:340px}
    }
    @media (max-width:480px){
      .dr-form,.dr-sec{padding:16px}
    }
    @media (max-width:380px){ .dr-row{grid-template-columns:1fr;gap:0} }
    @media (prefers-reduced-motion:reduce){ .dr-spin{animation:none} }

/* Ajouts de la page publique */
.dr-out{scroll-margin-top:96px}
.dr-accord{display:flex;gap:10px;align-items:flex-start;margin:0 0 14px;padding:12px;border-radius:12px;background:#FFF2E3;border:1.5px solid rgba(217,130,43,.45);font-size:.86rem;line-height:1.45;cursor:pointer}
.dr-accord input{margin-top:2px;width:18px;height:18px;accent-color:#D9822B;flex:0 0 auto}
.dr-accord.is-err{border-color:#D2453B;background:#FDECEA;animation:dr-shake .4s}
@keyframes dr-shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.dr-alerte{padding:14px 16px;border-radius:16px;background:#FFF2E3;border:1.5px solid rgba(217,130,43,.5);font-size:.9rem;line-height:1.55;color:#2a1f40}
.dr-alerte b{color:#090510}
.dr-input,.dr-select{font-size:16px}
@media (prefers-reduced-motion:reduce){ .dr-accord.is-err{animation:none} }
