/* Point d'entrée CSS du jeu */
@import "game/base.css?v=20260328-v55-mobile-ux-final";
@import "game/layout.css?v=20260328-v55-mobile-ux-final";
@import "game/players.css?v=20260328-v55-mobile-ux-final";
@import "game/board.css?v=20260328-v55-mobile-ux-final";
@import "game/cards.css?v=20260328-v55-mobile-ux-final";
@import "game/overlays.css?v=20260328-v55-mobile-ux-final";
@import "game/responsive.css?v=20260328-v55-mobile-ux-final";
@import "game/feedback.css?v=20260328-v55-mobile-ux-final";

.regles-copyright {
  margin-top: 18px;
  padding-top: 12px;
  border-top: 1px solid rgba(0,0,0,0.12);
  font-size: 0.95rem;
  color: #444;
}

.regles-copyright a {
  color: #1a5fb4;
  text-decoration: none;
}

.regles-copyright a:hover {
  text-decoration: underline;
}

.page-copyright {
  text-align: center;
  padding: 10px 16px 18px;
  font-size: 0.95rem;
  color: #e9f6ea;
  background: #0b3d20;
}

.page-copyright a {
  color: #fff4b0;
  text-decoration: none;
}

.page-copyright a:hover {
  text-decoration: underline;
}


.top-left-stack{position:absolute;top:10px;left:72px;z-index:6;display:flex;flex-direction:column;gap:10px;max-width:min(380px,calc(100% - 340px))}
.top-left-stack .info{position:relative;top:auto;left:auto;max-width:none}
.top-left-stack .guest-status-banner{margin:0}
.guest-status-banner{display:flex;flex-direction:column;justify-content:flex-start;gap:8px;align-items:flex-start;padding:12px 16px;border-radius:16px;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(2px)}
.guest-status-banner.guest-limit-reached{background:rgba(255,214,102,.14);border-color:rgba(255,214,102,.35)}
.guest-status-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;opacity:.8;margin-bottom:4px}
.guest-status-text{max-width:100%;font-size:.92rem;opacity:.92}
.guest-auth-panel{margin:18px 0 6px;padding:18px;border-radius:22px;background:rgba(12,18,28,.82);box-shadow:0 16px 40px rgba(0,0,0,.25)}
.guest-auth-intro-dialogue{margin-bottom:16px}
.ia-dialogues{display:grid;gap:12px}
.ia-bubble{display:flex;align-items:flex-start;gap:12px}
.ia-bubble.right{justify-content:flex-end}
.ia-avatar{min-width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#0b6623;background:linear-gradient(135deg,#f6f0c0,#ffffff)}
.ia-speech{max-width:760px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.ia-speech strong{display:block;margin-bottom:6px;font-size:1.05rem;color:#fff8c4}
.ia-speech p{margin:0;opacity:.94;line-height:1.45}
.guest-auth-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.guest-auth-card{padding:16px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.guest-auth-card h4{margin-top:0;margin-bottom:12px}
.guest-auth-form{display:grid;gap:8px}
.guest-auth-form input{padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.96);color:#111}
.guest-auth-form button{margin-top:4px}
.guest-forgot-inline{margin-top:12px}
.guest-forgot-box{margin-top:12px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.06)}
.history-panel .section-body{padding-top:8px}
.history-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.history-list li{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);line-height:1.35}
.history-list li.history-burn{border-color:rgba(255,180,80,.42)}
.history-list li.history-pickup{border-color:rgba(130,190,255,.30)}
.history-list li.history-end{border-color:rgba(255,230,120,.36);font-weight:700}
.history-empty{opacity:.8;font-style:italic}
.info-hints{margin-top:4px}
.info-hints .hint-line{opacity:.92}
@media (max-width: 900px){.top-left-stack{left:10px;right:10px;max-width:calc(100% - 20px)}}

.history-list{max-height:320px;overflow:auto;padding-right:4px}
.history-item{display:grid;grid-template-columns:28px 1fr;align-items:flex-start;gap:10px;transition:transform .22s ease, background .22s ease, border-color .22s ease;animation:historyAppear .24s ease}
.history-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:rgba(255,255,255,.09);font-size:.95rem}
.history-content{display:grid;gap:4px}
.history-player{font-size:.78rem;letter-spacing:.03em;text-transform:uppercase;opacity:.78}
.history-text{font-weight:600}
.history-cards{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;opacity:.92}
.history-latest{background:rgba(255,255,255,.09)!important;border-color:rgba(255,240,150,.4)!important;transform:translateY(-1px);box-shadow:0 0 0 1px rgba(255,240,150,.12),0 10px 24px rgba(0,0,0,.12)}
.history-burn .history-icon{background:rgba(255,166,77,.18)}
.history-pickup .history-icon{background:rgba(126,185,255,.16)}
.history-end .history-icon{background:rgba(255,227,102,.18)}
@keyframes historyAppear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}


.top-left-stack{left:22px;max-width:min(310px,calc(100% - 360px))}
.guest-status-banner{max-width:300px;padding:10px 14px}
.guest-status-cta a{color:#fff4b0;font-weight:700;text-decoration:none}
.guest-status-cta a:hover{text-decoration:underline}
.side-card-link[title], .side-card-link{position:relative}
.side-card-link:hover::after{content:attr(data-tooltip);position:absolute;left:50%;bottom:8px;transform:translateX(-50%);padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.82);color:#fff7c2;font-size:.78rem;white-space:nowrap;pointer-events:none}
.carte.selection{box-shadow:0 0 0 4px rgba(255,224,102,.98),0 0 18px rgba(255,224,102,.55),0 14px 24px rgba(0,0,0,.45)!important;filter:brightness(1.08)}
.pioche-guide-active{overflow:visible}
.pioche-incitation{position:absolute;right:-86px;top:34px;display:flex;align-items:center;gap:8px;color:#fff7c2;font-weight:700;animation:piochePulse 1s ease-in-out infinite;pointer-events:none;text-shadow:0 2px 8px rgba(0,0,0,.45)}
.pioche-incitation-arrow{font-size:2rem;line-height:1}
.pioche-incitation-text{padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.58);border:1px solid rgba(255,255,255,.18)}
@keyframes piochePulse{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}
.forum-form{display:grid;gap:8px;margin:10px 0 14px}
.forum-form textarea{min-height:96px;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.96);color:#111;resize:vertical}
.forum-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:300px;overflow:auto}
.forum-item,.forum-empty{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.forum-meta{display:flex;justify-content:space-between;gap:10px;font-size:.82rem;opacity:.86;margin-bottom:6px}
.forum-body{white-space:pre-wrap;line-height:1.4}
@media (max-width:900px){.pioche-incitation{right:-12px;top:-18px}.top-left-stack{left:10px;max-width:calc(100% - 20px)}}


.stats-fab{writing-mode:horizontal-tb!important;text-orientation:mixed!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:64px;min-height:118px;padding:10px 8px;border-radius:18px;font-weight:700}
.stats-fab .flag-top,.stats-fab .flag-bottom{font-size:18px;line-height:1}
.stats-fab .menu-text{font-size:14px;line-height:1.1}
.lang-switcher{display:flex;align-items:center;gap:8px;margin-right:auto}
.lang-link{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.1);color:#fff4b0;text-decoration:none;font-weight:700;border:1px solid rgba(255,255,255,.16)}
.lang-link:hover{text-decoration:none;background:rgba(255,255,255,.18)}
.lang-switcher-auth{font-size:.95rem;margin-bottom:8px}
.lang-switcher-auth a{color:#1a5fb4;text-decoration:none;font-weight:700}
.lang-switcher-auth a:hover{text-decoration:underline}


@media (hover:none){.side-card-link:hover::after{display:none}}
body.touch-device button, body.touch-device .btn, body.touch-device select{min-height:48px}
body.touch-device .actions{gap:10px;padding:10px 12px}
body.touch-device .ia-level-control select{min-height:46px}
body.touch-device .stats-fab{min-width:72px;min-height:128px}
body.device-mobile .page{padding-bottom:12px}
body.device-mobile .actions{top:76px}
body.device-mobile .guest-status-banner{max-width:none;width:min(100%,420px)}
body.device-mobile .ia-speech{max-width:100%}

.community-banner{position:relative;z-index:1;display:grid;gap:10px;width:100%;margin:0 0 14px;padding:14px 16px;border-radius:18px;background:linear-gradient(135deg,rgba(11,61,32,.92),rgba(15,98,54,.88));border:1px solid rgba(255,244,176,.18);box-shadow:0 18px 42px rgba(0,0,0,.18);backdrop-filter:blur(3px)}
.community-banner-kicker{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#fff4b0;font-weight:800}
.community-banner-copy{line-height:1.4;font-weight:600;color:#f5fff2}
.community-banner-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.community-banner-stats div{padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08)}
.community-banner-stats strong{display:block;font-size:1.15rem;color:#fff4b0}
.community-banner-stats span{display:block;font-size:.83rem;opacity:.94}
.lang-switcher{display:flex;align-items:center;gap:8px;margin-right:auto;flex-wrap:wrap;max-width:100%}
.lang-link.active{background:rgba(255,244,176,.22);border-color:rgba(255,244,176,.38);color:#fff}

@media (max-width:900px){.community-banner{padding:12px 14px}.community-banner-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.community-banner-stats{grid-template-columns:1fr 1fr}.lang-link{padding:8px 10px;font-size:.88rem}}
