/* LES IMPOTS DE L'ANNEE (14/10/2026) — public/impots.js */

/* ---- Finances ---- */
.imp-fin-g{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.imp-fin-t{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#c9a55c;margin-bottom:4px}
.imp-tot td{border-top:1px solid var(--line,#26305a);padding-top:6px}
.imp-alerte{margin-top:10px;padding:8px 10px;border-radius:10px;background:rgba(232,196,106,.10);border:1px solid rgba(232,196,106,.35);color:#f4e2ad;font-size:12.5px}
.imp-alerte.rouge{background:rgba(255,90,90,.10);border-color:rgba(255,107,107,.40);color:#ffc2c2}
@media (max-width:640px){.imp-fin-g{grid-template-columns:1fr}}

/* ---- L'avis d'imposition (accueil) ---- */
.imp-avis{border:2px solid #e8c46a!important;background:linear-gradient(160deg,#241c08,#120e05)!important;box-shadow:0 0 30px rgba(232,196,106,.18)}
.imp-avis-sur{font-size:10.5px;letter-spacing:.32em;text-transform:uppercase;color:#d9b25e}
.imp-avis-t{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:600;color:#fff6dc;margin:4px 0 6px}
.imp-avis-txt{color:#d8ccaa;margin-bottom:12px}
.imp-blocs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.imp-bloc{border-radius:14px;padding:14px;background:rgba(0,0,0,.35);border:1px solid rgba(232,196,106,.35);display:flex;flex-direction:column;gap:8px}
.imp-bloc.fait{opacity:.75}
.imp-bloc-t{font-weight:800;color:#f4e6c0}
.imp-bloc-m{font-size:26px;font-weight:900;color:#ffd77a}
.imp-l{font-size:12px;color:#cfc4a4}.imp-l td{padding:2px 0}
.imp-payer{width:100%}
.imp-payer-max{border-color:#ff8a6b!important;color:#ffd2c2!important}
.imp-ok{color:#4ade80;font-weight:800}
.imp-ko{color:#ff9a8a;font-weight:700;font-size:13px}
@media (max-width:640px){.imp-blocs{grid-template-columns:1fr}.imp-avis-t{font-size:22px}}

/* ---- La dette fiscale ---- */
.imp-dette{border:2px solid #b4233c!important;background:linear-gradient(160deg,#2a0a12,#12050a)!important;box-shadow:0 0 28px rgba(180,35,60,.22)}
.imp-dette .imp-avis-sur{color:#ff8fa3}
.imp-dette-tete{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.imp-dette-tete img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:50% 18%;background:#f3f0ea;border:2px solid #b4233c;flex:none}
.imp-audience{color:#f3d6dc;margin:6px 0 8px;font-size:13.5px}
.imp-verdict{color:#ffb4c0;font-weight:800;margin:6px 0}
.imp-dette-btns{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}
.imp-justice{border-radius:18px;padding:14px;margin-bottom:14px;background-size:cover;background-position:center}

/* ---- Le pop-up de convocation : la carte des decisions, en bordeaux ---- */
.dil-tribunal{--a:#e0566f;--a2:#ffd0d8;--f1:#2a0910;--f2:#0b0306;--l1:rgba(224,86,111,.22);--l2:rgba(232,196,106,.10);--carte:rgba(26,8,13,.92);--bord:rgba(224,86,111,.36)}
.dil-tribunal .dil-avatar.photo img{background:#f3f0ea}

/* ---- Le choix de l'avocat : la galerie des collections, dans la salle d'audience ---- */
.imp-av-ov{position:fixed;inset:0;z-index:9100;overflow:auto;padding:18px 12px 30px;opacity:0;transition:opacity .35s ease;background:#07060a}
.imp-av-ov.on{opacity:1}
.imp-av-salle{position:fixed;inset:0;background-size:cover;background-position:center;filter:brightness(.32) saturate(.8) blur(2px);transform:scale(1.04)}
.imp-av-page{max-width:1100px;margin:0 auto!important;background:rgba(7,6,10,.72)!important;border-color:rgba(212,175,95,.32)!important;backdrop-filter:blur(3px)}
.imp-av-fond{background:radial-gradient(38% 30% at 22% 28%,rgba(180,35,60,.22),transparent 70%),radial-gradient(34% 28% at 78% 62%,rgba(212,175,95,.18),transparent 70%)!important}
.imp-av-x{position:relative;z-index:2;margin-bottom:6px}
.imp-av-grille{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.imp-av-cadre{cursor:default;background:linear-gradient(180deg,#ece7dc,#cfc6b4)}
.imp-av-cadre img{object-fit:cover;object-position:50% 12%}
.imp-av-titre{font-size:12px;letter-spacing:.06em;color:#d9b25e;text-transform:uppercase}
.imp-av-carte.pris{border-color:#e9cf8f!important;box-shadow:0 0 0 1px #e9cf8f,0 18px 40px -18px rgba(212,175,95,.6)}

/* ---- L'audience ---- */
.aud-ov{position:fixed;inset:0;z-index:9200;opacity:0;transition:opacity .5s ease;color:#f4ecd9}
.aud-ov.on{opacity:1}
.aud-salle{position:absolute;inset:0;background-size:cover;background-position:center 40%;transform:scale(1.06);animation:audZoom 40s ease-in-out infinite alternate}
.aud-voile{position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 20%,rgba(10,6,4,.35),rgba(6,4,3,.86) 70%),linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.75))}
@keyframes audZoom{from{transform:scale(1.06)}to{transform:scale(1.14) translateY(-1%)}}
.aud-scene{position:relative;height:100%;display:flex;flex-direction:column;align-items:center;padding:14px 14px 18px;max-width:980px;margin:0 auto}
.aud-entete{width:100%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:#d9b25e}
.aud-prog{letter-spacing:.1em;color:#bfae86}
.aud-av{width:100%;height:100%;object-fit:cover;object-position:50% 14%;border-radius:50%;background:#efe9de}
.aud-banc,.aud-perso{display:flex;flex-direction:column;align-items:center;gap:6px;transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .45s,opacity .45s;filter:brightness(.72) saturate(.85);opacity:.9}
.aud-banc{margin-top:10px}
.aud-banc>.aud-av,.aud-banc>img{width:110px;height:110px;border:3px solid #c9a55c;box-shadow:0 10px 30px #000a}
.aud-perso>.aud-av,.aud-perso>img,.aud-perso>svg,.aud-perso>.aud-prez-av{width:84px;height:84px;border-radius:50%;border:2px solid rgba(233,207,143,.55);box-shadow:0 8px 24px #000a;overflow:hidden}
.aud-prez-vide{display:flex;align-items:center;justify-content:center;font-size:40px;background:#1b1712}
.aud-nom{font-size:11.5px;color:#e8dcc0;text-align:center;max-width:150px;line-height:1.25}
.parle{filter:none;opacity:1;transform:scale(1.08)}
.parle>.aud-av,.parle>img{border-color:#ffe39a;box-shadow:0 0 0 4px rgba(255,227,154,.25),0 10px 30px #000a}
.aud-cotes{width:100%;display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;padding:0 6px}
.aud-c{transform:translateY(-6px)}
.aud-bulle{width:100%;margin-top:14px;border-radius:18px;padding:16px 18px;background:rgba(14,10,6,.86);border:1px solid rgba(212,175,95,.35);box-shadow:0 20px 50px #000c;backdrop-filter:blur(6px);animation:audBulle .5s cubic-bezier(.2,.7,.2,1)}
@keyframes audBulle{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.aud-bulle.verdict{border-color:#e9cf8f;box-shadow:0 0 40px rgba(233,207,143,.25),0 20px 50px #000c}
.aud-qui{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#d9b25e;margin-bottom:6px}
.aud-texte{font-size:15.5px;line-height:1.6;color:#f6efdd;font-family:Georgia,'Cormorant Garamond',serif}
.aud-actions{display:flex;justify-content:flex-end;margin-top:12px}
.aud-reps{display:flex;flex-direction:column;gap:8px;width:100%}
.aud-reps button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;padding:11px 14px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(233,207,143,.25);color:#fff;font-size:14px;transition:background .25s,border-color .25s,transform .25s}
.aud-reps button:hover{background:rgba(255,255,255,.11);border-color:#e9cf8f;transform:translateX(3px)}
.aud-reps button.pris{border-color:#e9cf8f;background:rgba(233,207,143,.16)}
.aud-reps button[disabled]{pointer-events:none}
.aud-verdict-t{font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;font-weight:700;margin-bottom:6px;color:#ffe39a}
.aud-verdict-t.coupable{color:#ff8fa3}.aud-verdict-t.classee{color:#7ee2a8}
.aud-peines{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.aud-peines div{flex:1;min-width:120px;text-align:center;padding:10px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(233,207,143,.25)}
.aud-peines b{display:block;font-size:22px;color:#ffd77a}.aud-peines span{font-size:11.5px;color:#cfc2a0}
.aud-delibere{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 0;font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;color:#f4e6c0}
.aud-marteau{font-size:46px;animation:audMarteau 1.2s ease-in-out infinite}
@keyframes audMarteau{0%,100%{transform:rotate(-12deg)}50%{transform:rotate(18deg) translateY(4px)}}
.aud-sortir{display:block;margin:10px auto 0;background:none;border:none;color:#bfae86;text-decoration:underline;cursor:pointer;font-size:12px}
@media (max-width:640px){
  .aud-banc>.aud-av,.aud-banc>img{width:84px;height:84px}
  .aud-perso>.aud-av,.aud-perso>img,.aud-perso>svg,.aud-perso>.aud-prez-av{width:60px;height:60px}
  .aud-nom{font-size:10px;max-width:96px}
  .aud-texte{font-size:14px}
  .aud-scene{padding:10px 10px 12px;overflow:auto}
}

/* ---- Justice et lois : l'audience du proces dans la salle du tribunal ---- */
.jus-salle{border-radius:18px;padding:14px;background-size:cover;background-position:center;border:1px solid rgba(212,175,95,.3)}
.jus-salle .card{background:rgba(14,10,6,.78);border-color:rgba(212,175,95,.28);backdrop-filter:blur(3px)}
.imp-av-cadre .lux-cat{font-size:15px;letter-spacing:.08em;color:#ffd77a;background:rgba(7,7,10,.72);padding:3px 9px}
.imp-justice{min-height:420px;display:flex;flex-direction:column;gap:12px;border:1px solid rgba(212,175,95,.3)}

/* ---- Bureau du president : les acomptes ---- */
.imp-bu{display:flex;flex-direction:column;gap:12px}
.imp-bu-tete{padding:14px 16px;border-radius:16px;background:linear-gradient(160deg,#241c08,#120e05);border:1px solid rgba(232,196,106,.35)}
.imp-bu-carte{border-radius:14px;padding:14px;background:#0f1a30;border:1px solid #26346e;display:flex;flex-direction:column;gap:7px}
.imp-bu-l{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:#c9d3f5}
.imp-bu-l b{color:#fff}.imp-bu-l b.ok{color:#4ade80}
.imp-bu-l.fort{font-size:15px}.imp-bu-l.fort b{color:#ffd77a}
.imp-bu-barre{height:7px;border-radius:6px;background:#1b2550;overflow:hidden}
.imp-bu-barre i{display:block;height:100%;background:linear-gradient(90deg,#3ddc97,#e8c46a);border-radius:6px;transition:width .6s ease}
.imp-bu-btns{display:flex;gap:6px;flex-wrap:wrap}
.imp-bu-btns .btn{flex:1}

/* ---- La dette qui s'installe : bandeaux, chute du club, offre du mecene ---- */
.imp-bandeau{grid-column:1/-1;align-self:start;display:flex;flex-direction:column;gap:3px;margin:0 0 12px;padding:12px 16px;border-radius:14px;cursor:pointer;
  background:linear-gradient(135deg,#5c0d1d,#2a0710);border:2px solid #e0566f;box-shadow:0 0 26px rgba(224,86,111,.35);animation:impPouls 2.6s ease-in-out infinite}
.imp-bandeau b{color:#ffd0d8;font-size:15px;letter-spacing:.04em}.imp-bandeau span{color:#f7d9de;font-size:12.5px;line-height:1.45}
.imp-bandeau.gris{background:linear-gradient(135deg,#2a2f45,#151a2c);border-color:#6b7599;box-shadow:none;animation:none;cursor:default}
.imp-bandeau.or{background:linear-gradient(135deg,#3a2c0a,#1a1406);border-color:#e8c46a;box-shadow:none;animation:none;cursor:default}
.imp-bandeau.gris b,.imp-bandeau.or b{color:#ffe6a8}
@keyframes impPouls{0%,100%{box-shadow:0 0 18px rgba(224,86,111,.25)}50%{box-shadow:0 0 34px rgba(224,86,111,.55)}}
.imp-mecene{border-color:#e8c46a!important}
.imp-chute{display:flex;align-items:center;justify-content:center;gap:18px;margin:16px 0 8px}
.imp-chute-col{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:150px}
.imp-chute-div{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#d9b25e}
.imp-chute-club{padding:10px 16px;border-radius:12px;font-weight:800;background:rgba(255,255,255,.06);border:1px solid rgba(233,207,143,.3)}
.imp-chute-club.depart{animation:impPart 1.6s .4s ease-in both}
.imp-chute-club.arrivee{color:#ff8fa3;border-color:#e0566f;animation:impArrive 1s 1.6s cubic-bezier(.2,.8,.2,1.2) both}
.imp-chute-fleche{font-size:34px;color:#e0566f;animation:impFleche 1.2s ease-in-out infinite}
@keyframes impPart{to{opacity:.2;filter:grayscale(1)}}
@keyframes impArrive{from{opacity:0;transform:translateY(-60px)}to{opacity:1;transform:none}}
@keyframes impFleche{0%,100%{transform:translateY(-4px)}50%{transform:translateY(6px)}}
.imp-montent{display:flex;flex-direction:column;align-items:center;gap:5px;margin-top:10px;font-size:13px;color:#7ee2a8}
.imp-montent div{animation:impArrive .8s both}
.imp-montent div:nth-child(2){animation-delay:.4s}

/* ---- Le rachat de la sanction : la carte or, avec la photo en tete ---- */
.imp-rachat-ov .dil-carte{padding-top:0;overflow:hidden auto}
.imp-rachat-img{margin:0 -20px 14px;height:190px;overflow:hidden;position:relative}
.imp-rachat-img img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block;animation:impZoom 14s ease-in-out infinite alternate}
.imp-rachat-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(22,17,6,.95))}
@keyframes impZoom{from{transform:scale(1)}to{transform:scale(1.08)}}
.imp-rachat-payer{border-color:#e8c46a!important;background:linear-gradient(135deg,rgba(232,196,106,.22),rgba(232,196,106,.06))!important}
.imp-rachat-payer b{color:#ffe39a}
