*{box-sizing:border-box}
:root{
 --black:#131613;--deep:#1b1f1b;--panel:#252922;--panel2:#2c3028;
 --line:#0d0f0d;--line2:#3a3e34;--paper:#d8c59a;--paper2:#b5a277;
 --green:#9fca11;--green2:#83ad00;--green-dark:#4e6800;
 --text:#d5d7ca;--muted:#8c9185;--stat:#7bc04b;--exo:#58aee2;
 --orange:#e4a23c;--red:#da6257;
}
html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#171b18;color:var(--text)}
button,input{font:inherit}.hidden{display:none!important}
body{background:
 radial-gradient(circle at 50% -20%,#3b4236 0,#20251f 40%,#111411 100%);
 min-height:100vh}
.game-bg{min-height:100vh;padding:28px}
.fm-window{max-width:1500px;margin:auto;border:3px solid #080a08;background:#242821;box-shadow:0 0 0 1px #505448,0 22px 70px #000b;border-radius:5px;overflow:hidden}
.window-titlebar{height:35px;background:linear-gradient(#33372f,#20231f);border-bottom:2px solid #0d0f0c;display:flex;align-items:center;justify-content:center;position:relative;color:#d6d81d;font-weight:bold;font-size:15px;text-shadow:0 1px #000}
.window-close{position:absolute;right:8px;top:3px;border:0;background:transparent;color:#111;font-size:28px;font-weight:bold;text-shadow:0 1px #72776a;cursor:pointer}
.fm-body{display:grid;grid-template-columns:300px minmax(650px,1fr) 330px;min-height:720px}
.history-pane,.workshop-pane,.inventory-pane{min-width:0}
.history-pane{border-right:3px solid #0d0f0d;background:#171a17}
.inventory-pane{border-left:3px solid #0d0f0d;background:#1a1d19}
.pane-title{height:35px;padding:0 10px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#2e322b,#20241f);border-bottom:1px solid #0b0d0b;font-size:13px;font-weight:bold}.pane-title button{border:0;background:#739600;color:#161b0b;width:22px;height:22px;border-radius:2px;cursor:pointer;font-size:11px}
.game-history{height:685px;overflow:auto;padding:6px}.history-placeholder{padding:18px 8px;color:#697066;font-size:12px}
.history-line{display:grid;grid-template-columns:19px 1fr;gap:5px;padding:4px 3px;font-size:12px;line-height:1.25;cursor:pointer;border-radius:2px}.history-line:hover{background:#242a22}.history-line .icon{font-size:13px;text-align:center}.history-line.sc{color:#83c85c}.history-line.sn{color:#abd270}.history-line.ec{color:#d4786e}.history-line .reliq{color:#9fc368}
.workshop-pane{background:#22261f;display:flex;flex-direction:column}
.forge-top{position:relative;min-height:142px;background:
 linear-gradient(rgba(221,201,157,.96),rgba(190,170,126,.96)),
 repeating-linear-gradient(90deg,#0000 0 16px,#00000008 16px 17px);
 border:7px solid #3d3a2d;box-shadow:inset 0 0 0 2px #796e50;margin:7px 7px 0;border-radius:5px;color:#5c513a}
.profession{position:absolute;right:18px;top:10px;font-size:12px}.profession small{margin-left:5px}
.slots{display:flex;gap:8px;justify-content:center;padding-top:19px}.slot{width:58px;height:58px;border:3px solid #716648;border-radius:4px;background:linear-gradient(#3c3b30,#24261f);box-shadow:inset 0 0 0 2px #151713,0 1px #f1deb0;display:grid;place-items:center;position:relative;color:#8d856c}.slot-plus{font-size:30px;color:#77725f}.item-slot{padding:0;cursor:pointer}.item-slot img{max-width:52px;max-height:52px;object-fit:contain}.signature-feather{font-size:30px;transform:rotate(-15deg);color:#b8ad93}.rune-gem{width:25px;height:31px;display:block;clip-path:polygon(50% 0,90% 25%,78% 82%,50% 100%,18% 82%,8% 25%);background:linear-gradient(135deg,#bde8f0,#5eb5c5 45%,#24536d);filter:drop-shadow(0 1px 1px #000)}.rune-gem.empty{opacity:.08}.rune-gem.r1{background:linear-gradient(135deg,#e3efba,#a7c34d,#486920)}.rune-gem.r2{background:linear-gradient(135deg,#d8c6f4,#9d67ce,#4d246b)}.rune-gem.r3{background:linear-gradient(135deg,#f4d58e,#d6902f,#734713)}.slot-qty{position:absolute;right:2px;bottom:0;color:#fff;font-size:11px;font-weight:bold;text-shadow:0 1px 2px #000}
.fusion-buttons{display:flex;gap:4px;justify-content:center;margin-top:8px}.game-btn{border:2px solid #334a00;border-radius:1px;background:linear-gradient(#b5e715,#87b600);box-shadow:inset 0 0 0 1px #d7ef58,0 1px 1px #000;color:#233000;font-weight:bold;font-size:12px;padding:7px 36px;cursor:pointer;text-shadow:0 1px #d6f16a}.game-btn:hover:not(:disabled){filter:brightness(1.07)}.game-btn:disabled{filter:grayscale(1);opacity:.5;cursor:not-allowed}.game-btn.small{padding:6px 14px}
.search-box{margin:8px;border:1px solid #0d100c;background:#191d18;padding:10px}.search-title{font-size:12px;margin-bottom:7px}.search-line{display:flex;gap:5px}.search-line input,.inventory-search,.inventory-footer input{background:#10130f;border:1px solid #40463b;color:#dfe2d7;padding:7px;outline:none}.search-line input{flex:1}.item-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:7px;max-height:230px;overflow:auto}.item-result{border:1px solid #343a31;background:#242a22;color:#cfd2c7;padding:5px;display:grid;grid-template-columns:40px 1fr;gap:8px;text-align:left;cursor:pointer}.item-result:hover{background:#30372c}.item-result img{width:38px;height:38px;object-fit:contain;background:#141713}.item-result strong{display:block;font-size:12px}.item-result small{color:#899084;font-size:10px}
.item-summary{margin:6px 8px 0;padding:6px 9px;background:#191d18;border:1px solid #34392f;display:flex;align-items:center;gap:8px}.item-summary img{width:34px;height:34px;object-fit:contain}.item-summary>div{display:flex;flex-direction:column;flex:1}.item-summary strong{font-size:12px;color:#e1e3da}.item-summary span{font-size:10px;color:#858c80}.tiny-btn{background:#353b31;border:1px solid #4b5245;color:#b9beb1;padding:4px 7px;cursor:pointer}
.effects-table-wrap{margin:6px 7px 0;flex:1;min-height:0;border-top:2px solid #11140f;overflow:auto}
.effects-table{width:100%;border-collapse:collapse;font-size:12px}.effects-table th{position:sticky;top:0;z-index:2;background:#191d18;border-bottom:2px solid #0c0e0b;color:#c8cabf;font-weight:bold;padding:5px 3px}.effects-table td{height:31px;border-bottom:1px solid #171a16;background:#252a23;padding:3px 5px}.effects-table tbody tr:nth-child(even) td{background:#222720}.effects-table tbody tr.changed td{background:#465c17!important;box-shadow:inset 0 1px #657d30,inset 0 -1px #31410d}.effects-table tbody tr.exo td{color:var(--exo)}.effects-table tbody tr.missing td{color:#6f766a}.effects-table .eye-col{width:25px}.effects-table .effect-col{text-align:left}.effects-table th:not(.effect-col),.effects-table td.num{text-align:center}.eye{border:0;background:transparent;color:#b5d329;cursor:pointer;font-size:13px}.effect-current{color:var(--stat);font-weight:bold}.exo .effect-current{color:var(--exo)}.modif{font-weight:bold;color:#e9f0df}.modif.plus{color:#cbf388}.modif.minus{color:#ffaf80}.rune-col{width:45px}.table-rune{width:31px;height:27px;border:1px solid #0b0d0b;background:#151815;cursor:pointer;display:inline-grid;place-items:center;position:relative}.table-rune:hover{outline:1px solid #8cb20f}.table-rune .mini-gem{width:15px;height:19px;clip-path:polygon(50% 0,90% 25%,78% 82%,50% 100%,18% 82%,8% 25%);background:linear-gradient(135deg,#d7eff1,#62b6c3,#245069)}.table-rune.pa .mini-gem{background:linear-gradient(135deg,#e2d4f7,#9a68cf,#4f2868)}.table-rune.ra .mini-gem{background:linear-gradient(135deg,#f0d99a,#cf8e37,#704410)}.table-rune.empty{opacity:.2;cursor:default}.empty-table{text-align:center;color:#72796d!important;padding:40px!important}
.flash-result{margin:5px 8px 0;padding:5px 8px;text-align:center;font-size:12px;font-weight:bold;border:1px solid transparent}.flash-result.sc{background:#2e4a22;color:#a9e989;border-color:#557843}.flash-result.sn{background:#3d481d;color:#d7e987;border-color:#6d7d2f}.flash-result.ec{background:#4c2824;color:#f0a09a;border-color:#754039}
.bottom-options{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-top:2px solid #11140f;background:#181c17;font-size:11px;color:#c7cabe}.bottom-options input{accent-color:#a7d211}.well-display{display:flex;gap:6px;align-items:center;color:#8f9688}.well-display strong{color:#d4e66b;font-size:13px}
.inventory-header{padding:8px;background:#22271f;border-bottom:1px solid #0e100d}.inventory-tabs{display:flex;gap:2px;margin-bottom:6px}.tab{width:38px;height:31px;background:#30362c;border:1px solid #454c3f;color:#9fc50a;cursor:pointer}.tab.active{background:#161a15;box-shadow:inset 0 -3px #91ba08}.inventory-search{width:100%}.filter-line{padding:7px 9px;font-size:11px;border-bottom:1px solid #10130f;color:#aeb3a8}.filter-line input{accent-color:#9dc70e}
.rune-inventory{padding:8px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;align-content:start;max-height:590px;overflow:auto}.inv-rune{aspect-ratio:1;border:1px solid #383e34;background:linear-gradient(135deg,#2c312a,#171a16);cursor:pointer;display:grid;place-items:center;position:relative}.inv-rune:hover,.inv-rune.selected{outline:2px solid #9fc912;z-index:1}.inv-rune .gem{width:24px;height:30px;clip-path:polygon(50% 0,90% 25%,78% 82%,50% 100%,18% 82%,8% 25%);background:linear-gradient(135deg,#d9eef0,#65b9c7,#24536d);filter:drop-shadow(0 1px 1px #000)}.inv-rune.pa .gem{background:linear-gradient(135deg,#e0cff5,#9f6bd1,#522a70)}.inv-rune.ra .gem{background:linear-gradient(135deg,#f2dd9b,#d39639,#704410)}.inv-rune small{position:absolute;right:2px;bottom:1px;font-size:8px;color:#fff;text-shadow:0 1px 2px #000}.inv-rune[title]{}
.inventory-footer{border-top:2px solid #10130f;padding:8px;display:flex;justify-content:space-between;gap:8px;background:#20241e}.inventory-footer>div{display:flex;flex-direction:column;min-width:0}.inventory-footer span{font-size:9px;color:#747b70}.inventory-footer strong{font-size:11px;color:#d4d8ca;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.inventory-footer label{font-size:9px;color:#858c80}.inventory-footer input{width:52px;padding:3px}
.tip-bar{max-width:1500px;margin:10px auto 0;padding:8px 12px;background:#121511;border:1px solid #31372e;color:#7d8578;font-size:11px}.tip-bar strong{color:#b2c76c}
.modal{position:fixed;inset:0;z-index:40;display:grid;place-items:center}.modal-bg{position:absolute;inset:0;background:#0009}.modal-panel{position:relative;width:min(560px,90vw);max-height:80vh;overflow:auto;background:#232820;border:3px solid #0d0f0c;box-shadow:0 0 0 1px #555c4c,0 20px 60px #000;padding:18px}.modal-x{position:absolute;right:8px;top:5px;background:transparent;border:0;color:#9ba190;font-size:23px;cursor:pointer}.modal-panel h2{color:#d7d923;font-size:16px}.modal-panel p,.modal-panel li{font-size:12px;line-height:1.5;color:#c1c5b8}.result-badge{display:inline-block;padding:4px 7px;font-weight:bold}.result-badge.sc{background:#345726;color:#aee88e}.result-badge.sn{background:#4d5921;color:#d9ed89}.result-badge.ec{background:#5a2c28;color:#f0aaa4}
@media(max-width:1150px){.game-bg{padding:8px}.fm-body{grid-template-columns:220px minmax(540px,1fr)}.inventory-pane{grid-column:1/-1;border-left:0;border-top:3px solid #0d0f0d}.rune-inventory{grid-template-columns:repeat(10,1fr);max-height:220px}.game-history{height:665px}}
@media(max-width:760px){.fm-body{display:flex;flex-direction:column}.history-pane{order:3;border-right:0;border-top:3px solid #0d0f0d}.workshop-pane{order:1}.inventory-pane{order:2}.game-history{height:260px}.forge-top{min-height:165px}.fusion-buttons{flex-wrap:wrap}.effects-table{min-width:650px}.rune-inventory{grid-template-columns:repeat(6,1fr)}}

.inventory-label{
  padding:7px 9px 0;
  color:#aeb3a8;
  font-size:10px;
  text-transform:uppercase;
  font-weight:bold;
  letter-spacing:.05em
}
.rune-inventory{
  min-height:270px;
}
.inventory-error{
  grid-column:1/-1;
  min-height:180px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  text-align:center;
  padding:20px;
  color:#d6b96c;
  border:1px dashed #575842;
  background:#171a16;
  font-size:12px;
  line-height:1.5
}
.inventory-error small{color:#888f82}

.real-rune-img{
  width:50px;
  height:50px;
  object-fit:contain;
  image-rendering:auto;
  filter:drop-shadow(0 2px 2px #0009)
}
.inv-rune-img{
  width:46px;
  height:46px;
  max-width:88%;
  max-height:88%;
  object-fit:contain;
  image-rendering:auto;
  filter:drop-shadow(0 2px 2px #000a)
}
.table-rune-img{
  width:27px;
  height:27px;
  object-fit:contain;
  image-rendering:auto
}
.inv-rune small.infinite{
  right:3px;
  bottom:1px;
  color:#f2f2e8;
  font-size:10px;
  font-weight:bold
}
.selected-rune-meta{
  display:block;
  color:#858c80;
  font-size:8px;
  margin-top:2px
}
.rune-slot .slot-qty{
  color:#f6f3df;
  font-size:12px
}

/* V3.1 - empêcher les équipements/runes de sortir de leurs slots */
.item-slot{
  overflow:hidden;
  position:relative;
}
.item-slot img,
#slotItemImage{
  display:block;
  width:50px !important;
  height:50px !important;
  max-width:50px !important;
  max-height:50px !important;
  object-fit:contain !important;
  object-position:center center;
  margin:auto;
  transform:none !important;
}
.rune-slot{
  overflow:hidden;
}
.real-rune-img{
  display:block;
  width:48px !important;
  height:48px !important;
  max-width:48px !important;
  max-height:48px !important;
  object-fit:contain !important;
  object-position:center;
  margin:auto;
}

/* V4 - centrage exact dans les cases de fusion */
.item-slot{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  line-height:0 !important;
}
.item-slot .slot-plus{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  line-height:1;
}
.item-slot #slotItemImage:not(.hidden){
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  width:46px !important;
  height:46px !important;
  max-width:46px !important;
  max-height:46px !important;
  margin:0 !important;
  z-index:2;
}
.item-slot #slotItemImage:not(.hidden) + *{}
.item-slot:has(#slotItemImage:not(.hidden)) .slot-plus{
  display:none;
}
.rune-slot{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
}
.rune-slot .real-rune-img:not(.hidden){
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:46px !important;
  height:46px !important;
  margin:0 !important;
}

/* V4.1 */
.item-actions{
  display:flex;
  gap:5px;
  align-items:center;
}
.item-actions .tiny-btn:first-child{
  color:#d7e66d;
  border-color:#59642f;
  background:#2c321f;
}
.search-box .search-line{
  position:relative;
}
#itemSearch{
  transition:border-color .15s,box-shadow .15s;
}
#itemSearch:focus{
  border-color:#7e9d18;
  box-shadow:0 0 0 1px #7e9d18;
}

/* V4.2 */
.item-summary .item-actions{
  margin-left:auto;
  display:flex;
  flex-direction:row !important;
  align-items:center;
  gap:6px;
}
.item-summary .item-actions .tiny-btn{
  white-space:nowrap;
}


/* =========================================================
   V4.5 — LIVE intégré directement dans l'interface
   ========================================================= */
.live-version{
  position:absolute;
  left:10px;
  top:7px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.1em;
  padding:2px 5px;
  border:1px solid rgba(170,220,0,.45);
  background:rgba(151,201,0,.08);
  color:#b9ea2d;
  border-radius:2px;
}

.effects-table tbody tr.live-target{
  outline:1px solid rgba(174,224,0,.55);
  outline-offset:-1px;
  background:linear-gradient(90deg,rgba(150,200,0,.18),rgba(150,200,0,.05))!important;
}
.effects-table tbody tr.live-target td{
  border-top-color:rgba(174,224,0,.18);
  border-bottom-color:rgba(174,224,0,.18);
}

.live-preview{
  display:flex;
  align-items:center;
  gap:5px;
  margin-top:3px;
  font-size:9px;
  color:#d8eaa8;
}
.live-preview .live-arrow{opacity:.65}
.live-preview b{font-weight:700}
.live-preview em{
  font-style:normal;
  font-size:7px;
  font-weight:900;
  letter-spacing:.07em;
  padding:1px 4px;
  border:1px solid rgba(190,220,90,.34);
  background:rgba(0,0,0,.18);
  border-radius:2px;
}
.preview-mod{
  display:inline-block;
  font-weight:800;
  color:#c8ec5b;
  animation:livePulse 1.15s ease-in-out infinite alternate;
}

.advanced-inline{
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:3px;
  font-size:8px;
  opacity:.70;
}
.advanced-inline span{
  white-space:nowrap;
}
.advanced-inline em{
  margin-left:auto;
  font-style:normal;
  font-size:7px;
  font-weight:900;
  letter-spacing:.06em;
  padding:1px 4px;
  border-radius:2px;
  border:1px solid rgba(255,255,255,.13);
}
.advanced-inline em.perf{border-color:rgba(128,210,86,.45)}
.advanced-inline em.over{border-color:rgba(231,176,66,.50)}
.advanced-inline em.exo{border-color:rgba(94,156,232,.50)}
.advanced-inline em.malus{border-color:rgba(214,93,83,.45)}

.selected-rune-meta{
  display:flex!important;
  flex-direction:column;
  gap:2px;
  line-height:1.2;
}
.selected-rune-meta .live-meta-detail{
  font-size:8px;
  opacity:.72;
}

.well-display{
  display:flex;
  align-items:center;
  gap:5px;
}
.well-delta{
  min-width:25px;
  font-style:normal;
  font-size:9px;
  font-weight:900;
  opacity:0;
  transition:opacity .15s ease;
}
.well-delta.up,
.well-delta.down{opacity:1}
.well-delta.up{color:#bfe85e}
.well-delta.down{color:#ef8a75}
#wellValue.well-up,
#wellValue.well-down{
  animation:wellPop .45s ease;
}

.flash-result{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.flash-result strong{font-size:12px}
.flash-result span{font-size:9px;opacity:.75}

.effects-table tbody tr.changed{
  animation:rowLiveChange .7s ease;
}

@keyframes rowLiveChange{
  0%{filter:brightness(1.65)}
  100%{filter:brightness(1)}
}
@keyframes wellPop{
  0%{transform:scale(1)}
  45%{transform:scale(1.28)}
  100%{transform:scale(1)}
}
@keyframes livePulse{
  from{opacity:.55}
  to{opacity:1}
}

@media (prefers-reduced-motion: reduce){
  .preview-mod,.effects-table tbody tr.changed,#wellValue.well-up,#wellValue.well-down{
    animation:none!important;
  }
}


/* =========================================================
   V4.6 — Drag & Drop des runes
   ========================================================= */
.rune-card[draggable="true"],
[data-rune-id][draggable="true"]{
  cursor:grab;
}
.rune-card[draggable="true"]:active,
[data-rune-id][draggable="true"]:active{
  cursor:grabbing;
}
.dragging-rune{
  opacity:.45!important;
  transform:scale(.94);
}

#runeSlot.drop-ready{
  outline:2px dashed rgba(172,224,0,.55);
  outline-offset:3px;
}
#runeSlot.drag-over{
  outline:2px solid #a9df00;
  outline-offset:3px;
  transform:scale(1.06);
  transition:transform .12s ease;
}
#runeSlot.drag-over::after{
  content:"Dépose la rune";
  position:absolute;
  left:50%;
  bottom:-22px;
  transform:translateX(-50%);
  white-space:nowrap;
  font-size:9px;
  font-weight:800;
  color:#c8ee63;
  background:#151a13;
  border:1px solid rgba(170,220,0,.4);
  padding:2px 6px;
  border-radius:2px;
  z-index:30;
}

.rune-qty-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(0,0,0,.62);
}
.rune-qty-modal.hidden{display:none!important}

.rune-qty-dialog{
  width:min(360px,100%);
  border:2px solid #444937;
  background:#1a1f19;
  box-shadow:0 18px 60px rgba(0,0,0,.55);
}
.rune-qty-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:9px 10px;
  border-bottom:1px solid #343a2f;
  background:linear-gradient(#292f28,#1e241d);
}
.rune-qty-head strong{
  font-size:12px;
  color:#d8dfd0;
}
.rune-qty-head button{
  width:26px;
  height:26px;
  border:1px solid #444a3e;
  background:#171b16;
  color:#adb5a4;
  font-size:18px;
  line-height:1;
}

.rune-qty-rune{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 12px 4px;
}
.rune-qty-rune img{
  width:44px;
  height:44px;
  object-fit:contain;
  border:1px solid #3d4437;
  background:#11150f;
  padding:3px;
}
.rune-qty-rune img.hidden{display:none}
.rune-qty-rune>div{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.rune-qty-rune strong{
  font-size:12px;
  color:#dce3d3;
}
.rune-qty-rune small{
  font-size:9px;
  color:#98a08f;
}

.rune-qty-field{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:10px 12px;
}
.rune-qty-field span{
  font-size:10px;
  color:#b7beb0;
}
.rune-qty-field input{
  height:34px;
  border:1px solid #59604f;
  background:#111510;
  color:#edf2e8;
  padding:0 9px;
  font-size:14px;
  outline:none;
}
.rune-qty-field input:focus{
  border-color:#a8d900;
  box-shadow:0 0 0 1px rgba(168,217,0,.25);
}

.rune-qty-actions{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  padding:10px 12px 12px;
}
.rune-qty-actions button{
  min-width:90px;
  height:32px;
  font-size:10px;
  font-weight:700;
  border:1px solid #4a5142;
}
.rune-qty-actions .secondary-btn{
  background:#282e27;
  color:#c4cbc0;
}
.rune-qty-actions .primary-btn{
  background:linear-gradient(#b9e900,#8db600);
  color:#172000;
  border-color:#c6ef28;
}

@media (prefers-reduced-motion: reduce){
  #runeSlot.drag-over{transition:none}
}

/* V4.6.1 — drag fix */
.rune-item[draggable="true"],
.rune-card[draggable="true"],
[data-id][draggable="true"],
[data-rune-id][draggable="true"],
[data-rune][draggable="true"]{
  cursor:grab!important;
  -webkit-user-drag:element;
  user-select:none;
}
.rune-item[draggable="true"] img,
.rune-card[draggable="true"] img,
[data-id][draggable="true"] img,
[data-rune-id][draggable="true"] img,
[data-rune][draggable="true"] img{
  pointer-events:none;
  -webkit-user-drag:none;
  user-select:none;
}


/* =========================================================
   V4.6.2 — FIX réel drag/drop + retrait de rune
   ========================================================= */
#runeSlot{
  position:relative;
}

.remove-rune-btn{
  position:absolute;
  top:-7px;
  right:-7px;
  z-index:40;
  width:19px;
  height:19px;
  min-width:0;
  padding:0;
  border-radius:50%;
  border:1px solid #69705f;
  background:#222820;
  color:#d9dfd4;
  font-size:14px;
  font-weight:800;
  line-height:16px;
  cursor:pointer;
  box-shadow:0 2px 5px rgba(0,0,0,.45);
}
.remove-rune-btn.hidden{display:none!important}
.remove-rune-btn:hover{
  border-color:#b9e623;
  color:#dff57c;
}

#runeSlot.slot-has-rune{
  cursor:default;
}
#runeSlot.drop-ready{
  box-shadow:0 0 0 2px rgba(170,220,0,.38), inset 0 0 15px rgba(170,220,0,.10);
}
#runeSlot.drag-over{
  box-shadow:0 0 0 3px #a9df00, inset 0 0 20px rgba(169,223,0,.22);
}

.inv-rune[draggable="true"]{
  cursor:grab!important;
  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:element;
}
.inv-rune[draggable="true"]:active{
  cursor:grabbing!important;
}
.inv-rune img{
  pointer-events:none;
  -webkit-user-drag:none;
  user-select:none;
}


/* =========================================================
   V4.8 — Filtres de runes fonctionnels
   ========================================================= */
.inventory-tabs{
  display:none!important;
}

.rune-filter-tabs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:4px;
  width:100%;
  margin-bottom:6px;
}

.rune-filter-btn{
  min-width:0;
  height:28px;
  padding:0 5px;
  border:1px solid #40483a;
  background:#171c16;
  color:#9da694;
  font-size:9px;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}

.rune-filter-btn:hover{
  color:#dce5d2;
  border-color:#69745d;
}

.rune-filter-btn.active{
  color:#d5f45b;
  border-color:#98c500;
  background:linear-gradient(#2b331e,#202619);
  box-shadow:inset 0 -2px 0 #a6d600;
}

.inventory-header{
  align-items:stretch;
}


/* =========================================================
   V4.9 — Fusionner tout séquentiel + bouton Arrêter
   ========================================================= */
#fuseAllBtn.is-running{
  border-color:#d8b24e!important;
  background:linear-gradient(#55421f,#392b16)!important;
  color:#ffe39a!important;
  box-shadow:inset 0 0 0 1px rgba(255,226,142,.12),0 0 10px rgba(216,178,78,.18);
}
#fuseAllBtn.is-running:hover{
  border-color:#f0c963!important;
  color:#fff1ba!important;
}

/* =========================================================
   V5.0 — Coach FM / Mode apprentissage live
   ========================================================= */
.coach-panel{margin:10px 12px 8px;border:1px solid #4a523e;background:#151a14}
.coach-head{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;background:linear-gradient(#252c22,#1d231b);border-bottom:1px solid #3b4335}
.coach-head>div:first-child{display:flex;flex-direction:column;gap:2px}.coach-kicker{font-size:8px;letter-spacing:1.3px;color:#a9d22c}.coach-head strong{font-size:12px;color:#e1e7dc}
.coach-level{display:flex;gap:7px;align-items:center;font-size:9px}.coach-level span{color:#cce75b}.coach-level b{color:#929c8a}
.coach-grid{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:1px;background:#343b30}
.coach-card{min-width:0;padding:10px;background:#181e17}.coach-card.coach-now{background:#1b2119}.coach-card.coach-action{background:#202719}
.coach-label{display:block;margin-bottom:5px;font-size:8px;font-weight:800;letter-spacing:.7px;color:#7f8b77}.coach-card strong{display:block;margin-bottom:4px;font-size:11px;color:#dfe5da}.coach-card p{margin:0;font-size:9px;line-height:1.45;color:#aeb7a7}.coach-action strong{color:#d2ed66}
.coach-bottom{padding:8px 10px}.coach-lesson{display:flex;justify-content:space-between;gap:8px;font-size:8px}.coach-lesson span{color:#737d6d}.coach-lesson b{color:#b7c1af}
.coach-meter{height:3px;margin-top:6px;background:#2a3027;overflow:hidden}.coach-meter i{display:block;width:0;height:100%;background:#a6d300;transition:width .25s ease}
.coach-warning{margin-top:7px;padding:6px 8px;border-left:2px solid #d7ae45;background:#2a2417;color:#e4cc8c;font-size:9px;line-height:1.4}.coach-warning.hidden{display:none}
@media(max-width:900px){.coach-grid{grid-template-columns:1fr}.coach-head{align-items:flex-start}.coach-level{flex-direction:column;align-items:flex-end}}


/* =========================================================
   V5.1 — Rune de signature
   ========================================================= */
.signature-rune-source{
  width:100%;
  min-height:34px;
  display:flex;
  align-items:center;
  gap:7px;
  margin:4px 0 7px;
  padding:5px 7px;
  border:1px solid #4a5144;
  background:#171c16;
  color:#b9c2b2;
  font-size:9px;
  font-weight:700;
  cursor:grab;
}
.signature-rune-source:hover{
  border-color:#7f8c72;
  color:#e0e7db;
}
.signature-rune-source:active{cursor:grabbing}
.signature-rune-icon{
  width:22px;height:22px;
  display:grid;place-items:center;
  border:1px solid #676f5d;
  background:radial-gradient(circle at 35% 35%,#e8e5cc,#7d7562 65%,#35352f);
  color:#24251f;
  font-size:13px;
  border-radius:3px;
}
.signature-slot{
  position:relative;
}
.signature-slot.slot-has-rune::before{
  content:"✒";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  font-size:27px;
  color:#e8e2c7;
  text-shadow:0 1px 2px #000;
  pointer-events:none;
}
.signature-slot-image{
  position:absolute;
  inset:50% auto auto 50%;
  width:46px;height:46px;
  transform:translate(-50%,-50%);
  object-fit:contain;
  z-index:2;
}
.signature-slot-image.hidden{display:none}
.signature-slot.drop-ready{
  outline:2px dashed rgba(207,231,91,.55);
  outline-offset:3px;
}
.signature-slot.drag-over{
  outline:2px solid #cfe75b;
  outline-offset:3px;
}

/* =========================================================
   V5.2 — Mode apprentissage optionnel
   ========================================================= */
.coach-panel.hidden{display:none!important}
.learning-mode-toggle{
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  user-select:none;
}
.learning-mode-toggle input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.learning-mode-toggle>span:last-child{
  display:flex;
  flex-direction:column;
  gap:1px;
}
.learning-mode-toggle b{
  font-size:10px;
  color:#cbd3c5;
}
.learning-mode-toggle small{
  font-size:8px;
  color:#727c6d;
}
.learning-switch{
  position:relative;
  width:32px;
  height:17px;
  flex:0 0 auto;
  border:1px solid #4b5544;
  border-radius:10px;
  background:#171c16;
}
.learning-switch::after{
  content:"";
  position:absolute;
  top:2px;left:2px;
  width:11px;height:11px;
  border-radius:50%;
  background:#737d6c;
  transition:left .15s ease,background .15s ease;
}
.learning-mode-toggle input:checked + .learning-switch{
  border-color:#9dc800;
  background:#283119;
}
.learning-mode-toggle input:checked + .learning-switch::after{
  left:17px;
  background:#c6eb48;
}
.learning-mode-toggle input:focus-visible + .learning-switch{
  outline:2px solid #b5da38;
  outline-offset:2px;
}


/* V5.4 — Logo Saharash dans l'atelier */
.atelier-guild-mark{
  position:fixed;
  top:10px;
  left:12px;
  z-index:5000;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(15,12,25,.72);
  border:1px solid rgba(179,157,232,.28);
  box-shadow:0 6px 20px rgba(0,0,0,.35);
  backdrop-filter:blur(5px);
}
.atelier-guild-mark img{
  width:40px;
  height:40px;
  object-fit:contain;
}
.atelier-guild-mark:hover{
  transform:translateY(-1px);
  filter:brightness(1.08);
}


/* =========================================================
   V5.6 — Refonte visuelle de l'atelier
   Objectif : moins "tableau vide", meilleure hiérarchie,
   inventaire lisible, panneau central plus premium.
   ========================================================= */

:root{
  --fm-bg:#101510;
  --fm-panel:#171d16;
  --fm-panel-2:#1d251b;
  --fm-panel-3:#232c20;
  --fm-border:#3b4936;
  --fm-border-soft:#2c3729;
  --fm-text:#e1e7dc;
  --fm-muted:#8d9987;
  --fm-accent:#b7dc38;
  --fm-accent-soft:#8eaa2c;
  --fm-gold:#c7aa66;
}

/* Le simulateur remplit mieux l'écran sans donner l'impression
   d'une petite fenêtre perdue au milieu. */
body{
  background:
    radial-gradient(circle at 50% -10%,rgba(105,130,58,.12),transparent 35%),
    linear-gradient(180deg,#111711 0%,#0b0f0b 100%) !important;
}

.game-shell,
.forgemage-window,
.app-shell,
.main-window{
  box-shadow:0 24px 70px rgba(0,0,0,.45) !important;
}

/* Cadres généraux plus propres */
.panel,
.history-panel,
.center-panel,
.inventory-panel,
.left-panel,
.right-panel{
  border-color:var(--fm-border-soft) !important;
}

/* Zone supérieure : davantage de profondeur */
.forge-top,
.forge-area,
.workbench,
.forge-workbench{
  background:
    linear-gradient(180deg,rgba(229,211,165,.96),rgba(196,173,117,.96)) !important;
  border:1px solid #7d6f4e !important;
  box-shadow:
    inset 0 1px rgba(255,255,255,.28),
    inset 0 -12px 30px rgba(84,67,37,.08) !important;
}

/* Les emplacements objet/rune/signature deviennent plus visibles. */
.slot,
.item-slot,
.rune-slot,
.signature-slot{
  border-radius:5px !important;
}
.forge-top .slot,
.forge-area .slot,
.workbench .slot{
  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,.65),
    0 3px 7px rgba(0,0,0,.25) !important;
}

/* Recherche équipement */
.item-search,
.equipment-search,
.search-equipment{
  background:#121812 !important;
  border:1px solid #33402f !important;
  padding:14px !important;
}
.item-search input,
.equipment-search input,
.search-equipment input{
  min-height:40px !important;
  font-size:14px !important;
  color:#dce4d7 !important;
  background:#0d120d !important;
  border-color:#3d4a38 !important;
}
.item-search button,
.equipment-search button,
.search-equipment button{
  min-height:40px !important;
  font-weight:700 !important;
}

/* Tableau : la grande zone vide est moins plate */
.stats-table,
.effects-table,
.item-effects{
  background:
    linear-gradient(180deg,#1c241a,#181f17) !important;
}
.stats-table thead,
.effects-table thead,
.item-effects thead{
  background:#131913 !important;
}
.stats-table th,
.effects-table th,
.item-effects th{
  height:34px !important;
  color:#cfd8c9 !important;
  font-size:11px !important;
  letter-spacing:.2px;
}
.stats-table td,
.effects-table td,
.item-effects td{
  border-bottom:1px solid #2a3427 !important;
}

/* Etat vide : crée une vraie zone d'accueil au lieu d'un immense vide */
.empty-state,
.table-empty,
.empty-equipment{
  color:#7f8b79 !important;
  font-size:13px !important;
}

/* Historique */
.history-panel,
.left-panel{
  background:linear-gradient(180deg,#151b14,#111611) !important;
}
.history-panel h2,
.history-panel h3,
.left-panel h2,
.left-panel h3{
  color:#d7dfd2 !important;
  font-size:13px !important;
}
.history-list,
#historyList{
  font-size:11px !important;
}

/* INVENTAIRE : principal défaut visible sur la capture.
   Cases un peu plus grandes, respirantes et avec vrai feedback. */
.inventory-panel,
.right-panel{
  background:linear-gradient(180deg,#151b14,#101510) !important;
}
.rune-filter-tabs{
  gap:6px !important;
  padding:8px 8px 5px !important;
}
.rune-filter-btn{
  min-height:31px !important;
  border:1px solid #3a4735 !important;
  background:#151c14 !important;
  color:#aeb8a8 !important;
  font-size:10px !important;
  border-radius:3px !important;
}
.rune-filter-btn.active{
  color:#d9ef79 !important;
  border-color:#9cbe27 !important;
  background:linear-gradient(#26331b,#1d2817) !important;
  box-shadow:inset 0 -2px #a8cd2d !important;
}

#runeSearch,
.rune-search{
  min-height:38px !important;
  margin:7px 8px !important;
  font-size:13px !important;
  background:#0d120d !important;
  border:1px solid #364331 !important;
}

.inventory-grid,
#runeInventory{
  gap:6px !important;
  padding:8px !important;
}

.inv-rune{
  min-height:64px !important;
  border:1px solid #354131 !important;
  border-radius:4px !important;
  background:
    linear-gradient(145deg,#252d23,#191f18) !important;
  box-shadow:
    inset 0 1px rgba(255,255,255,.035),
    0 1px 2px rgba(0,0,0,.28) !important;
  transition:transform .12s ease,border-color .12s ease,background .12s ease !important;
}
.inv-rune:hover{
  transform:translateY(-2px) !important;
  border-color:#74894c !important;
  background:linear-gradient(145deg,#303a2c,#20281e) !important;
  z-index:2;
}
.inv-rune.selected{
  border-color:#b6da38 !important;
  box-shadow:
    inset 0 0 0 1px #79951f,
    0 0 12px rgba(182,218,56,.12) !important;
}
.inv-rune img{
  width:38px !important;
  height:38px !important;
  object-fit:contain !important;
  image-rendering:auto !important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.45));
}
.inv-rune .infinite{
  right:4px !important;
  bottom:3px !important;
  font-size:9px !important;
  color:#cfd6ca !important;
}

/* Rune signature : intégrée visuellement à l'inventaire */
#signatureRuneSource{
  margin:7px 8px 3px !important;
  min-height:36px !important;
  border-radius:3px !important;
  border-color:#4b5945 !important;
  background:linear-gradient(180deg,#20281e,#171d16) !important;
}

/* Zone quantité/rune sélectionnée */
.rune-selection,
.selected-rune,
.inventory-footer{
  background:#111611 !important;
  border-top:1px solid #2f3a2b !important;
}

/* Boutons fusion : plus proches d'actions principales */
#fuseBtn,
#fuseAllBtn{
  min-height:36px !important;
  font-weight:700 !important;
  border-radius:2px !important;
}
#fuseBtn:not(:disabled){
  background:linear-gradient(#b8d84a,#879f2e) !important;
  color:#11160d !important;
  border-color:#d0e86c !important;
}
#fuseAllBtn:not(:disabled){
  background:linear-gradient(#d0c29a,#a99a72) !important;
  color:#29261c !important;
  border-color:#e0d2a9 !important;
}

/* Le logo fixe était trop isolé dans le coin de l'écran.
   On le rapproche visuellement de la fenêtre. */
.atelier-guild-mark{
  top:14px !important;
  left:14px !important;
  width:48px !important;
  height:48px !important;
  border-radius:8px !important;
  background:linear-gradient(145deg,#181524,#100e18) !important;
  border-color:#4f4765 !important;
}

/* Textes trop petits de l'atelier */
body,
button,
input{
  font-size:12px;
}
label{
  font-size:11px;
}

/* Coach, lorsqu'il est activé */
.coach-panel{
  border:1px solid #52613d !important;
  background:linear-gradient(180deg,#1a2317,#121811) !important;
  box-shadow:0 -10px 35px rgba(0,0,0,.18) !important;
}

/* Responsive */
@media(max-width:1200px){
  .inv-rune{min-height:58px !important}
  .inv-rune img{width:34px !important;height:34px !important}
}


/* ========================================================================
   V5.7 — REFAONTE ATELIER "FORGEMAGIE"
   Fer noirci · laiton · braises · parchemin · établi de forge
   ======================================================================== */

:root{
  --forge-bg:#0c0e0c;
  --forge-iron:#131713;
  --forge-iron-2:#191e19;
  --forge-iron-3:#212720;
  --forge-steel:#30382f;
  --forge-line:#3e473b;
  --forge-line-soft:#2a3028;
  --forge-brass:#b69658;
  --forge-brass-light:#dbc27f;
  --forge-ember:#db7a24;
  --forge-ember-light:#f3ae45;
  --forge-red:#a9472b;
  --forge-parchment:#cdb987;
  --forge-parchment-dark:#9b865a;
  --forge-green:#9fbd39;
  --forge-text:#e3e6de;
  --forge-muted:#899185;
}

html,body{
  background:#090b09 !important;
}
body{
  color:var(--forge-text) !important;
  background:
    radial-gradient(circle at 50% -12%,rgba(226,126,38,.13),transparent 34%),
    radial-gradient(circle at 16% 45%,rgba(183,150,88,.055),transparent 28%),
    linear-gradient(180deg,#111511 0,#090b09 72%) !important;
}
.game-bg{
  min-height:100vh !important;
  padding:18px 18px 22px !important;
  position:relative;
}
.game-bg:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background:
    repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.012) 3px 4px),
    radial-gradient(circle at 20% 20%,#fff 0 1px,transparent 1.3px);
  background-size:auto,130px 130px;
}

/* Fenêtre principale : cadre métallique plus imposant */
.fm-window{
  max-width:1680px !important;
  margin:auto !important;
  border:1px solid #596051 !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:#101410 !important;
  box-shadow:
    0 0 0 3px #080a08,
    0 0 0 4px #333a31,
    0 26px 90px rgba(0,0,0,.66) !important;
}

/* Barre de titre — identité intégrée */
.window-titlebar{
  height:52px !important;
  padding:0 16px !important;
  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;
  align-items:center !important;
  background:
    linear-gradient(180deg,#242b23 0,#171c17 100%) !important;
  border-bottom:1px solid #4b5145 !important;
  box-shadow:inset 0 -1px #090b09 !important;
  color:var(--forge-text) !important;
  text-shadow:none !important;
}
.window-titlebar:before,
.window-titlebar:after{
  content:"";
  position:absolute;
  width:5px;height:5px;
  border-radius:50%;
  background:#75684e;
  box-shadow:inset 0 1px #b6a579,0 1px #000;
  top:23px;
}
.window-titlebar:before{left:7px}
.window-titlebar:after{right:7px}

.window-brand{
  justify-self:start;
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  color:#d9ded5;
}
.window-brand img{
  width:34px;height:34px;object-fit:contain;
  filter:drop-shadow(0 2px 3px #000);
}
.window-brand span{
  display:flex;flex-direction:column;line-height:1.05;
}
.window-brand b{
  font-family:Georgia,serif;
  font-size:13px;
  letter-spacing:.06em;
  color:#eadfbe;
}
.window-brand small{
  margin-top:4px;
  font-size:7px;
  letter-spacing:.16em;
  color:#7f8a7c;
}
.window-center-title{
  justify-self:center;
  display:flex;
  align-items:center;
  gap:8px;
  font-family:Georgia,serif;
  font-size:15px;
  letter-spacing:.08em;
  color:#e1c579;
}
.profession-dot{color:#665b43}
.live-version{
  position:static !important;
  padding:3px 6px !important;
  font-family:Arial,sans-serif !important;
  font-size:8px !important;
  letter-spacing:.08em !important;
  color:#f1bf5b !important;
  border:1px solid #795a28 !important;
  background:#2d2417 !important;
}
.window-close{
  justify-self:end;
  position:static !important;
  width:30px;height:30px;
  display:grid;place-items:center;
  border:1px solid #413f36 !important;
  border-radius:4px;
  background:#161915 !important;
  color:#827c6b !important;
  font-size:22px !important;
  line-height:1 !important;
  text-shadow:none !important;
}
.window-close:hover{color:#e09a54 !important;border-color:#795238 !important}

/* Vraie répartition : historique compact / atelier dominant / inventaire stable */
.fm-body{
  min-height:760px !important;
  grid-template-columns:210px minmax(760px,1fr) 370px !important;
  background:#0d100d !important;
}
.history-pane{
  border-right:1px solid #30372e !important;
  background:
    linear-gradient(180deg,#151915,#101310) !important;
}
.workshop-pane{
  background:
    radial-gradient(circle at 50% 20%,rgba(187,150,79,.035),transparent 35%),
    linear-gradient(180deg,#1a1f19,#151915) !important;
}
.inventory-pane{
  border-left:1px solid #363e33 !important;
  background:linear-gradient(180deg,#151a15,#0f130f) !important;
}

/* Titres latéraux */
.pane-title{
  height:42px !important;
  padding:0 12px !important;
  background:linear-gradient(180deg,#212720,#171c17) !important;
  border-bottom:1px solid #3a4037 !important;
  color:#d9ded5 !important;
  font-size:11px !important;
  letter-spacing:.02em;
}
.pane-icon{font-style:normal;color:#b99859;margin-right:4px}
.pane-title button{
  width:26px !important;height:26px !important;
  border:1px solid #554d3d !important;
  background:#25241e !important;
  color:#bea66d !important;
}
.pane-title button:hover{background:#342d21 !important}

/* Historique plus utile et moins massif */
.game-history{
  height:718px !important;
  padding:10px 8px !important;
}
.history-placeholder{
  padding:18px 8px !important;
  color:#646d63 !important;
  font-size:11px !important;
  line-height:1.5;
}
.history-line{
  grid-template-columns:20px 1fr !important;
  padding:7px 5px !important;
  margin-bottom:3px;
  border:1px solid transparent;
  font-size:11px !important;
}
.history-line:hover{
  background:#1d231c !important;
  border-color:#333c30;
}

/* ÉTABLI DE FORGE */
.forge-top{
  min-height:188px !important;
  margin:12px 12px 0 !important;
  border:1px solid #6e6148 !important;
  border-radius:6px !important;
  color:#4e432f !important;
  background:
    radial-gradient(circle at 50% 140%,rgba(255,173,58,.22),transparent 43%),
    linear-gradient(180deg,#d8c692 0,#b9a36d 100%) !important;
  box-shadow:
    inset 0 0 0 3px rgba(74,60,36,.22),
    inset 0 1px rgba(255,246,208,.42),
    0 5px 18px rgba(0,0,0,.28) !important;
}
.forge-top:before{
  content:"";
  position:absolute;
  left:12px;right:12px;bottom:9px;
  height:3px;
  background:
    radial-gradient(circle,#6c5b3b 0 2px,transparent 2.5px) 0 50%/40px 3px repeat-x;
  opacity:.35;
}
.profession{
  right:16px !important;
  top:12px !important;
  padding:5px 8px;
  border:1px solid rgba(83,67,39,.28);
  background:rgba(238,222,180,.28);
  border-radius:3px;
  font-size:10px !important;
}
.slots{
  padding-top:24px !important;
  gap:11px !important;
  align-items:flex-start !important;
}
.forge-slot-block{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
}
.slot-label{
  color:#66583d !important;
  font-size:9px !important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.slot-flow{
  margin-top:27px;
  color:#766443;
  font-size:20px;
  font-family:Georgia,serif;
}
.slot-flow.subtle{opacity:.6}
.slot{
  width:66px !important;
  height:66px !important;
  border:2px solid #5f563f !important;
  border-radius:5px !important;
  background:
    linear-gradient(145deg,#35372f,#1b1e1a) !important;
  box-shadow:
    inset 0 0 0 2px #0d100d,
    inset 0 0 18px rgba(0,0,0,.25),
    0 2px 0 rgba(255,243,204,.28),
    0 4px 8px rgba(0,0,0,.25) !important;
}
.slot:hover{
  border-color:#776745 !important;
  filter:brightness(1.06);
}
.slot-plus{color:#8b846f !important}
.signature-slot{
  background:
    radial-gradient(circle at 50% 45%,rgba(149,107,187,.16),transparent 55%),
    linear-gradient(145deg,#35332f,#1a1c19) !important;
}
.remove-rune-btn{
  background:#291713 !important;
  border-color:#6e392c !important;
}

/* Boutons de fusion = cœur de l'action */
.fusion-buttons{
  margin-top:11px !important;
  gap:7px !important;
}
.game-btn{
  border-radius:4px !important;
  text-shadow:none !important;
  box-shadow:inset 0 1px rgba(255,255,255,.16),0 2px 5px rgba(0,0,0,.22) !important;
}
#fuseBtn:not(:disabled){
  background:linear-gradient(180deg,#dc8a2e,#a95420) !important;
  border:1px solid #efad4c !important;
  color:#fff1d6 !important;
}
#fuseBtn:hover:not(:disabled){filter:brightness(1.1)}
#fuseAllBtn:not(:disabled){
  background:linear-gradient(180deg,#c1a76d,#8e7444) !important;
  border:1px solid #ddc58d !important;
  color:#211b12 !important;
}
.game-btn:disabled{
  background:linear-gradient(#9c947e,#797260) !important;
  border-color:#6e6654 !important;
  color:#3d392f !important;
  opacity:.55 !important;
}

/* Recherche d'objet : bloc intégré à l'établi */
.search-box{
  margin:10px 12px 6px !important;
  padding:13px !important;
  border:1px solid #383f35 !important;
  border-radius:5px;
  background:linear-gradient(180deg,#181d18,#121612) !important;
  box-shadow:inset 0 1px rgba(255,255,255,.02);
}
.search-title{
  margin-bottom:8px !important;
  color:#cbd0c7 !important;
  font-size:11px !important;
  font-weight:700;
}
.search-line{gap:7px !important}
.search-line input{
  min-height:40px !important;
  padding:0 12px !important;
  background:#0c100c !important;
  border:1px solid #3a4337 !important;
  border-radius:3px !important;
  color:#e5e8e0 !important;
  font-size:13px !important;
}
#itemSearch:focus{
  border-color:#b18b4f !important;
  box-shadow:0 0 0 1px rgba(177,139,79,.35) !important;
}
#searchBtn{
  min-width:108px;
  background:linear-gradient(#b89b60,#8c7140) !important;
  border:1px solid #d1b77f !important;
  color:#211b12 !important;
}

/* Résumé objet */
.item-summary{
  margin:7px 12px 0 !important;
  padding:9px 11px !important;
  border:1px solid #3c4538 !important;
  border-radius:4px;
  background:#171c17 !important;
}
.item-summary img{width:42px !important;height:42px !important}
.item-summary strong{font-size:13px !important;color:#eee8d8 !important}
.item-summary span{font-size:10px !important}
.tiny-btn{
  border-radius:3px !important;
  background:#242a22 !important;
  border-color:#4a5144 !important;
}
.item-actions .tiny-btn:first-child{
  color:#e1c879 !important;
  border-color:#65583e !important;
  background:#2e291e !important;
}

/* Zone des effets : style plaque métallique, moins vide */
.effects-table-wrap{
  margin:8px 12px 0 !important;
  border:1px solid #31382f !important;
  border-radius:5px 5px 0 0;
  background:
    linear-gradient(180deg,#1d231c,#171c17) !important;
}
.effects-table{
  font-size:12px !important;
}
.effects-table th{
  height:38px !important;
  padding:7px 5px !important;
  background:linear-gradient(180deg,#20261f,#151a15) !important;
  border-bottom:1px solid #3a4336 !important;
  color:#c7cdc2 !important;
}
.effects-table td{
  height:35px !important;
  background:#1d231c !important;
  border-bottom:1px solid #282f26 !important;
}
.effects-table tbody tr:nth-child(even) td{
  background:#1a2019 !important;
}
.effects-table tbody tr:hover td{
  background:#232a21 !important;
}
.effect-current{color:#b6d66d !important}
.effects-table tbody tr.exo td,
.exo .effect-current{color:#6db8e7 !important}

/* État vide : un vrai accueil au centre */
.empty-table{
  height:330px !important;
  padding:0 !important;
  background:
    radial-gradient(circle at 50% 45%,rgba(197,162,82,.05),transparent 34%),
    linear-gradient(#1b211a,#181e17) !important;
}
.empty-workshop{
  min-height:330px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:35px;
  color:#788276;
}
.empty-anvil{
  width:64px;height:64px;
  display:grid;place-items:center;
  margin-bottom:5px;
  border:1px solid #534b39;
  border-radius:50%;
  background:#24221a;
  color:#bd9b5b;
  font-size:27px;
  box-shadow:0 0 30px rgba(196,151,74,.06);
}
.empty-workshop strong{
  color:#d5c59c;
  font-family:Georgia,serif;
  font-size:17px;
  font-weight:500;
}
.empty-workshop span{
  max-width:390px;
  text-align:center;
  font-size:11px;
  line-height:1.55;
}
.empty-workshop button{
  margin-top:7px;
  padding:9px 14px;
  border:1px solid #9e7c48;
  border-radius:3px;
  background:linear-gradient(#b59459,#80643b);
  color:#21190f;
  font-weight:700;
  cursor:pointer;
}
.empty-workshop button:hover{filter:brightness(1.08)}

/* Résultats SC / SN / EC en teintes de forge */
.flash-result{
  margin:7px 12px 0 !important;
  padding:8px 10px !important;
  border-radius:3px;
}
.flash-result.sc{
  background:#22351f !important;
  color:#b9e3a2 !important;
  border-color:#4c7042 !important;
}
.flash-result.sn{
  background:#3b321c !important;
  color:#ead38c !important;
  border-color:#705d2d !important;
}
.flash-result.ec{
  background:#3a211b !important;
  color:#eda18d !important;
  border-color:#713b2f !important;
}

/* Options basses */
.bottom-options{
  min-height:58px;
  padding:8px 12px !important;
  gap:10px;
  border-top:1px solid #363d33 !important;
  background:linear-gradient(#171c17,#121612) !important;
}
.learning-mode-toggle,
.advanced-toggle{
  min-height:38px;
  display:flex !important;
  align-items:center;
  gap:8px;
}
.advanced-toggle>span{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.advanced-toggle b{font-size:10px}
.advanced-toggle small{font-size:8px;color:#737d70}
.well-display{
  min-width:125px;
  justify-content:flex-end;
  padding:8px 10px;
  border:1px solid #5a4d34;
  border-radius:3px;
  background:#221f17;
}
.well-display span{font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.well-display strong{
  color:#e1bd68 !important;
  font-family:Georgia,serif;
  font-size:16px !important;
}

/* INVENTAIRE — largeur fixe, scroll propre, cases type coffre Dofus */
.inventory-header{
  padding:10px !important;
  background:linear-gradient(#1d231c,#151a15) !important;
  border-bottom:1px solid #353d32 !important;
}
.rune-filter-tabs{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:5px !important;
  padding:0 0 8px !important;
}
.rune-filter-btn{
  height:32px !important;
  min-height:32px !important;
  border:1px solid #404a3c !important;
  border-radius:3px !important;
  background:#121712 !important;
  color:#8f9a89 !important;
  font-size:9px !important;
}
.rune-filter-btn.active{
  color:#f0d68f !important;
  border-color:#8f7444 !important;
  background:linear-gradient(#332c1e,#201d16) !important;
  box-shadow:inset 0 -2px #b28c4c !important;
}
.signature-rune-source{
  width:100%;
  min-height:38px !important;
  margin:0 0 8px !important;
  border:1px solid #534a3c !important;
  border-radius:3px !important;
  background:linear-gradient(#24251f,#181b17) !important;
  color:#c9c8bb !important;
}
.signature-rune-source:hover{
  border-color:#8d7047 !important;
}
.inventory-search{
  min-height:39px !important;
  padding:0 10px !important;
  margin:0 !important;
  background:#0c100c !important;
  border:1px solid #3b4438 !important;
  border-radius:3px;
  color:#e4e8df !important;
  font-size:12px !important;
}
.inventory-search:focus{
  border-color:#9c7e4d !important;
  box-shadow:0 0 0 1px rgba(156,126,77,.3);
}
.filter-line{
  padding:9px 11px !important;
  background:#121712 !important;
  border-bottom:1px solid #30382d !important;
  color:#929d8e !important;
}
.filter-line input{accent-color:#b58f50 !important}
.inventory-label{
  min-height:48px;
  padding:10px 11px 7px !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  border-bottom:1px solid #2c332a;
  color:#c5cbc1 !important;
}
.inventory-label span{
  font-size:10px;
  letter-spacing:.08em;
}
.inventory-label small{
  color:#667064;
  font-size:8px;
  text-transform:none;
  font-weight:400;
  letter-spacing:0;
}
.rune-inventory{
  grid-template-columns:repeat(5,1fr) !important;
  gap:7px !important;
  padding:10px !important;
  min-height:0 !important;
  max-height:586px !important;
  overflow-y:auto !important;
  align-content:start !important;
  scrollbar-color:#66553a #111511;
  scrollbar-width:thin;
}
.inv-rune{
  aspect-ratio:1 !important;
  min-height:58px !important;
  border:1px solid #3a4337 !important;
  border-radius:5px !important;
  background:
    radial-gradient(circle at 50% 30%,rgba(255,255,255,.04),transparent 45%),
    linear-gradient(145deg,#262d24,#151a15) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.015),
    0 1px 2px #0007 !important;
}
.inv-rune:hover{
  transform:translateY(-1px) !important;
  border-color:#8f7548 !important;
  background:linear-gradient(145deg,#31372a,#1b211a) !important;
}
.inv-rune.selected{
  outline:0 !important;
  border-color:#d0a858 !important;
  box-shadow:
    inset 0 0 0 1px #80652f,
    0 0 0 2px rgba(208,168,88,.18),
    0 4px 12px #0006 !important;
}
.inv-rune-img{
  width:43px !important;
  height:43px !important;
}
.inv-rune small.infinite{
  color:#e3ddcb !important;
  font-size:9px !important;
}
.inventory-footer{
  min-height:64px;
  border-top:1px solid #3a4236 !important;
  padding:9px 10px !important;
  background:linear-gradient(#1a2019,#121612) !important;
}
.inventory-footer span{color:#707a6e !important}
.inventory-footer strong{
  color:#e4dfce !important;
  max-width:235px !important;
}
.inventory-footer input{
  background:#0d110d !important;
  border-color:#454e41 !important;
  color:#e4e7df !important;
}

/* Coach = parchemin sombre / conseils d'artisan */
.coach-panel{
  margin:10px 12px 12px !important;
  border:1px solid #66583c !important;
  border-radius:5px !important;
  background:
    linear-gradient(180deg,#211f18,#161914) !important;
  box-shadow:inset 0 1px rgba(221,190,118,.07),0 6px 20px #0003 !important;
}
.coach-kicker,.coach-label{
  color:#d3ad61 !important;
}

/* Barre d'aide discrète */
.tip-bar{
  max-width:1680px !important;
  margin:9px auto 0 !important;
  padding:9px 12px !important;
  border:1px solid #302f28 !important;
  background:#101310 !important;
  color:#666f65 !important;
  font-size:10px !important;
}
.tip-bar strong{color:#ad915b !important}

/* Modale assortie */
.modal-panel{
  background:#181d18 !important;
  border:1px solid #6b5b3d !important;
  border-radius:6px;
  box-shadow:0 0 0 3px #0a0d0a,0 25px 70px #000 !important;
}
.modal-panel h2{color:#e0bf73 !important}

/* Responsive */
@media(max-width:1320px){
  .fm-body{grid-template-columns:180px minmax(650px,1fr) 340px !important}
}
@media(max-width:1120px){
  .game-bg{padding:8px !important}
  .fm-body{
    grid-template-columns:190px minmax(580px,1fr) !important;
  }
  .inventory-pane{
    grid-column:1/-1 !important;
    border-left:0 !important;
    border-top:1px solid #343c31 !important;
  }
  .rune-inventory{
    grid-template-columns:repeat(10,1fr) !important;
    max-height:235px !important;
  }
  .game-history{height:720px !important}
}
@media(max-width:760px){
  .window-titlebar{grid-template-columns:1fr auto !important}
  .window-center-title{display:none !important}
  .window-brand small{display:none}
  .fm-body{display:flex !important;flex-direction:column !important}
  .workshop-pane{order:1}
  .inventory-pane{order:2}
  .history-pane{order:3}
  .game-history{height:260px !important}
  .forge-top{min-height:200px !important}
  .slots{padding-top:33px !important}
  .rune-inventory{grid-template-columns:repeat(5,1fr) !important}
  .bottom-options{flex-wrap:wrap}
}

/* V5.8 — Coach débutant : informations concrètes */
.coach-panel .coach-action,
#coachAction{
  color:#f0d38b !important;
  font-weight:700;
}
#coachWhat,#coachWhy,#coachAction,#coachTip{
  line-height:1.6 !important;
}

/* V5.9 — Coach continu jusqu'au jet souhaité */
#coachTitle{
  color:#f0c86d !important;
}
#coachAction{
  padding:10px 12px !important;
  border-left:3px solid #d18a32 !important;
  background:rgba(209,138,50,.08) !important;
}
#coachTip{
  color:#aeb7a9 !important;
  font-style:italic;
}

/* =========================================================
   V6.0 — Onboarding du mode apprentissage
   ========================================================= */
.learning-onboarding{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(5,7,5,.76);
  backdrop-filter:blur(5px);
}
.learning-onboarding.hidden{display:none!important}
.onboarding-card{
  width:min(560px,calc(100vw - 30px));
  border:1px solid #8b7043;
  border-radius:8px;
  overflow:hidden;
  color:#e6e5dc;
  background:
    radial-gradient(circle at 50% -10%,rgba(219,122,36,.12),transparent 35%),
    linear-gradient(180deg,#20241d,#141814);
  box-shadow:0 0 0 3px #090b09,0 30px 100px #000;
}
.onboarding-head{
  min-height:45px;
  padding:0 12px 0 17px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid #4b4536;
  background:linear-gradient(#292a22,#1b1e19);
}
.onboarding-step-badge{
  color:#e1bd68;
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
}
#onboardingClose{
  width:28px;height:28px;
  border:1px solid #49473d;
  border-radius:4px;
  background:#171a16;
  color:#8d8c82;
  font-size:19px;
  cursor:pointer;
}
.onboarding-step{
  position:relative;
  padding:31px 34px 34px;
}
.onboarding-step.hidden{display:none!important}
.onboarding-number{
  display:grid;
  place-items:center;
  width:42px;height:42px;
  margin-bottom:18px;
  border:1px solid #a47a3f;
  border-radius:50%;
  background:#30271a;
  color:#f0bd5e;
  font-family:Georgia,serif;
  font-size:19px;
}
.onboarding-step h2{
  margin:0 0 12px;
  color:#eadfc5;
  font-family:Georgia,serif;
  font-size:26px;
  font-weight:500;
}
.onboarding-step>p{
  margin:0 0 22px;
  color:#a9b0a4;
  font-size:14px;
  line-height:1.65;
}
.onboarding-explain{
  margin-bottom:22px;
  padding:14px 16px;
  display:flex;
  flex-direction:column;
  gap:5px;
  border-left:3px solid #cf852f;
  background:#211e17;
}
.onboarding-explain strong{
  color:#e2bd71;
  font-size:12px;
}
.onboarding-explain span{
  color:#a9afa4;
  font-size:12px;
  line-height:1.55;
}
.onboarding-primary{
  width:100%;
  min-height:46px;
  border:1px solid #e2ad55;
  border-radius:4px;
  background:linear-gradient(#dc8b2f,#a95520);
  color:#fff1d6;
  font-weight:800;
  font-size:13px;
  cursor:pointer;
}
.onboarding-primary:hover{filter:brightness(1.08)}

/* Une fois l'intro fermée, on montre littéralement où agir. */
body.learning-search-focus .search-box{
  position:relative;
  z-index:9000;
  border-color:#e0a94f!important;
  box-shadow:
    0 0 0 3px rgba(224,169,79,.20),
    0 0 32px rgba(219,122,36,.24)!important;
  animation:learningSearchPulse 1.5s ease-in-out infinite;
}
body.learning-search-focus .search-box:before{
  content:"1 · COMMENCE ICI";
  position:absolute;
  left:12px;
  top:-23px;
  padding:4px 8px;
  border:1px solid #b27c36;
  border-radius:3px 3px 0 0;
  background:#382719;
  color:#f0c26e;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}
@keyframes learningSearchPulse{
  0%,100%{box-shadow:0 0 0 3px rgba(224,169,79,.14),0 0 20px rgba(219,122,36,.14)}
  50%{box-shadow:0 0 0 4px rgba(224,169,79,.28),0 0 38px rgba(219,122,36,.28)}
}
@media(max-width:560px){
  .onboarding-step{padding:25px 20px 24px}
  .onboarding-step h2{font-size:22px}
}


/* =====================================================================
   V6.1 — MENTOR SAHARASH / COACHING VISUEL LIVE
   ===================================================================== */

.mentor-live{
  position:fixed;
  z-index:9400;
  left:224px;
  bottom:18px;
  width:min(535px,calc(100vw - 260px));
  height:225px;
  display:flex;
  align-items:flex-end;
  pointer-events:none;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.50));
}
.mentor-live.hidden{display:none!important}

.mentor-character{
  position:relative;
  flex:0 0 180px;
  height:225px;
  pointer-events:none;
}
.mentor-character img{
  position:absolute;
  z-index:2;
  left:-5px;
  bottom:-10px;
  width:190px;
  height:auto;
  max-height:235px;
  object-fit:contain;
  object-position:left bottom;
  filter:drop-shadow(0 7px 8px rgba(0,0,0,.58));
}
.mentor-glow{
  position:absolute;
  z-index:1;
  left:35px;
  bottom:5px;
  width:120px;
  height:120px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(235,143,43,.28),rgba(130,75,25,.08) 48%,transparent 70%);
  animation:mentorGlow 2.2s ease-in-out infinite;
}
@keyframes mentorGlow{
  0%,100%{transform:scale(.94);opacity:.65}
  50%{transform:scale(1.08);opacity:1}
}

.mentor-bubble{
  position:relative;
  z-index:3;
  width:355px;
  margin:0 0 18px -6px;
  border:1px solid #a58048;
  border-radius:8px;
  overflow:hidden;
  color:#e9e5d8;
  background:
    radial-gradient(circle at 10% 0,rgba(222,136,45,.12),transparent 35%),
    linear-gradient(180deg,#22271f,#141814);
  box-shadow:
    0 0 0 3px rgba(7,9,7,.85),
    0 14px 34px rgba(0,0,0,.48);
  pointer-events:auto;
}
.mentor-bubble:before{
  content:"";
  position:absolute;
  left:-10px;
  bottom:46px;
  width:18px;
  height:18px;
  transform:rotate(45deg);
  border-left:1px solid #a58048;
  border-bottom:1px solid #a58048;
  background:#181c17;
}
.mentor-bubble-head{
  min-height:43px;
  padding:7px 8px 7px 12px;
  display:flex;
  align-items:center;
  gap:8px;
  border-bottom:1px solid #403a2e;
  background:linear-gradient(#292b23,#1b1f1a);
}
.mentor-avatar-dot{
  width:9px;height:9px;border-radius:50%;
  background:#e59332;
  box-shadow:0 0 9px #e59332;
}
.mentor-bubble-head>div{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
  gap:1px;
}
.mentor-bubble-head b{
  color:#ecd493;
  font-family:Georgia,serif;
  font-size:12px;
}
.mentor-bubble-head small{
  color:#798276;
  font-size:8px;
}
#mentorMinimize{
  width:26px;height:26px;
  border:1px solid #44473d;
  border-radius:4px;
  background:#141713;
  color:#9ca196;
  cursor:pointer;
}
.mentor-bubble-body{
  padding:12px 14px 13px;
}
.mentor-step{
  display:inline-flex;
  margin-bottom:6px;
  padding:3px 6px;
  border:1px solid #765c35;
  border-radius:2px;
  background:#2c2418;
  color:#e0ae58;
  font-size:7px;
  font-weight:900;
  letter-spacing:.12em;
}
.mentor-bubble-body strong{
  display:block;
  margin-bottom:5px;
  color:#f1dfb0;
  font-family:Georgia,serif;
  font-size:14px;
  line-height:1.2;
}
.mentor-bubble-body p{
  margin:0;
  color:#aeb5a9;
  font-size:10px;
  line-height:1.48;
}
.mentor-show-target{
  width:100%;
  min-height:31px;
  border:0;
  border-top:1px solid #393d34;
  background:#171b16;
  color:#b89a62;
  font-size:9px;
  cursor:pointer;
}
.mentor-show-target:hover{
  color:#efc873;
  background:#1e241c;
}
.mentor-show-target.hidden{display:none!important}

.mentor-live.minimized{
  width:180px;
  height:165px;
}
.mentor-live.minimized .mentor-character{
  flex-basis:120px;
  height:165px;
}
.mentor-live.minimized .mentor-character img{
  width:135px;
  max-height:170px;
}
.mentor-live.minimized .mentor-bubble{
  width:52px;
  height:48px;
  margin-left:-7px;
  margin-bottom:12px;
}
.mentor-live.minimized .mentor-bubble-body,
.mentor-live.minimized .mentor-show-target,
.mentor-live.minimized .mentor-bubble-head>div,
.mentor-live.minimized .mentor-avatar-dot{
  display:none!important;
}
.mentor-live.minimized .mentor-bubble-head{
  height:48px;
  padding:9px;
  justify-content:center;
  border:0;
}
.mentor-live.minimized #mentorMinimize{
  display:block;
}

/* LIVE focus: the mentor literally frames the part being taught */
.mentor-focus,
.mentor-focus-soft{
  position:relative!important;
  z-index:9300!important;
}
.mentor-focus{
  outline:2px solid #f0ad45!important;
  outline-offset:4px!important;
  box-shadow:
    0 0 0 5px rgba(240,173,69,.18),
    0 0 28px rgba(236,139,38,.38)!important;
  animation:mentorFocusPulse 1.2s ease-in-out infinite!important;
}
.mentor-focus-soft{
  outline:1px solid #c18f4c!important;
  outline-offset:3px!important;
  box-shadow:0 0 18px rgba(193,143,76,.20)!important;
}
.mentor-focus:after,
.mentor-focus-soft:after,
.mentor-change-up:after,
.mentor-change-down:after{
  content:attr(data-mentor-tag);
  position:absolute;
  z-index:9500;
  top:-22px;
  right:2px;
  padding:4px 7px;
  border-radius:3px 3px 0 0;
  white-space:nowrap;
  font-size:7px;
  font-weight:900;
  letter-spacing:.08em;
  pointer-events:none;
}
.mentor-focus:after{
  background:#4a3019;
  border:1px solid #d7953d;
  color:#ffcf79;
}
.mentor-focus-soft:after{
  background:#272219;
  border:1px solid #806a45;
  color:#cdb57d;
}
@keyframes mentorFocusPulse{
  0%,100%{filter:brightness(1)}
  50%{filter:brightness(1.12)}
}

/* What actually changed after a fusion */
.effects-table tr.mentor-change-up{
  position:relative;
  z-index:9290;
  outline:2px solid #70b75d!important;
  outline-offset:-2px;
  box-shadow:inset 0 0 22px rgba(86,168,74,.11)!important;
}
.effects-table tr.mentor-change-down{
  position:relative;
  z-index:9290;
  outline:2px solid #c3654d!important;
  outline-offset:-2px;
  box-shadow:inset 0 0 22px rgba(188,76,52,.12)!important;
}
.effects-table tr.mentor-change-up:after{
  background:#1e3a20;
  border:1px solid #559951;
  color:#b9e8af;
}
.effects-table tr.mentor-change-down:after{
  background:#402019;
  border:1px solid #a7513f;
  color:#f0b3a4;
}

/* While an element is framed, darken the rest very subtly. */
body:has(.mentor-focus) .fm-window{
  isolation:isolate;
}

/* Mentor inside welcome modal */
.onboarding-with-mentor{
  padding-left:185px!important;
  min-height:355px;
}
.onboarding-mentor{
  position:absolute;
  left:7px;
  bottom:0;
  width:175px;
  max-height:325px;
  object-fit:contain;
  object-position:left bottom;
  filter:drop-shadow(0 9px 9px rgba(0,0,0,.48));
  pointer-events:none;
}

@media(max-width:1320px){
  .mentor-live{left:190px}
}
@media(max-width:900px){
  .mentor-live{
    left:8px;
    bottom:8px;
    width:min(500px,calc(100vw - 16px));
    height:175px;
  }
  .mentor-character{
    flex-basis:125px;
    height:175px;
  }
  .mentor-character img{
    width:140px;
    max-height:180px;
  }
  .mentor-bubble{
    width:min(340px,calc(100vw - 145px));
    margin-bottom:8px;
  }
}
@media(max-width:600px){
  .mentor-live{height:150px}
  .mentor-character{display:none}
  .mentor-bubble{
    width:calc(100vw - 16px);
    margin:0;
  }
  .onboarding-with-mentor{
    padding-left:20px!important;
    padding-top:150px!important;
  }
  .onboarding-mentor{
    top:3px;
    bottom:auto;
    left:50%;
    transform:translateX(-50%);
    width:125px;
    max-height:150px;
  }
}


/* =====================================================================
   V6.2 — Mise en scène du Mentor : grand pendant l'explication,
           compact pendant l'action, déplacement visuel vers les cibles.
   ===================================================================== */

.learning-onboarding .onboarding-card{
  width:min(760px,calc(100vw - 30px))!important;
}

.mentor-intro-scene{
  min-height:430px;
  padding:0!important;
  display:grid;
  grid-template-columns:285px 1fr;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 58%,rgba(227,137,39,.18),transparent 31%),
    linear-gradient(90deg,#171a15 0,#1c211a 39%,#181c17 100%);
}
.mentor-intro-character{
  position:relative;
  min-height:430px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}
.mentor-intro-character img{
  position:relative;
  z-index:2;
  width:285px;
  max-height:410px;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 16px 14px rgba(0,0,0,.55));
  animation:mentorIntroFloat 3s ease-in-out infinite;
}
.mentor-intro-glow{
  position:absolute;
  z-index:1;
  left:32px;
  right:18px;
  bottom:24px;
  height:245px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(238,147,45,.27),rgba(122,67,22,.07) 52%,transparent 72%);
  filter:blur(4px);
}
.mentor-intro-name{
  position:absolute;
  z-index:4;
  left:50%;
  bottom:13px;
  transform:translateX(-50%);
  padding:5px 9px;
  border:1px solid #735932;
  border-radius:3px;
  background:rgba(22,20,15,.90);
  color:#dfb965;
  font-size:8px;
  font-weight:900;
  letter-spacing:.14em;
  white-space:nowrap;
}
@keyframes mentorIntroFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}

.mentor-intro-dialog{
  position:relative;
  align-self:center;
  margin:30px 28px 30px 4px;
  padding:26px 27px 25px;
  border:1px solid #6f6042;
  border-radius:8px;
  background:
    radial-gradient(circle at 0 50%,rgba(216,144,52,.09),transparent 34%),
    linear-gradient(180deg,#242820,#181c17);
  box-shadow:0 16px 38px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.025);
}
.mentor-dialog-tail{
  position:absolute;
  left:-12px;
  top:57%;
  width:22px;height:22px;
  transform:rotate(45deg);
  border-left:1px solid #6f6042;
  border-bottom:1px solid #6f6042;
  background:#1d211b;
}
.mentor-dialog-kicker{
  margin-bottom:9px;
  color:#d8a44e;
  font-size:8px;
  font-weight:900;
  letter-spacing:.13em;
}
.mentor-intro-dialog .onboarding-number{
  position:absolute;
  right:18px;
  top:17px;
  width:31px;height:31px;
  margin:0;
  font-size:13px;
}
.mentor-intro-dialog h2{
  margin:0 45px 10px 0;
  color:#efe2bf;
  font-size:25px;
}
.mentor-intro-dialog>p{
  margin:0 0 18px;
  color:#b4bbb0;
  font-size:13px;
  line-height:1.62;
}
.mentor-intro-dialog .onboarding-explain{
  margin-bottom:18px;
}
.mentor-intro-dialog .onboarding-primary{
  min-height:48px;
}
.mentor-intro-exit{
  animation:mentorIntroExit .27s ease forwards;
}
@keyframes mentorIntroExit{
  to{opacity:0;transform:scale(.975)}
}
.onboarding-card.mentor-leaving{
  animation:mentorCardLeave .3s ease forwards;
}
@keyframes mentorCardLeave{
  to{opacity:0;transform:translateY(8px) scale(.98)}
}

/* Live Mentor now has a visible entrance from the tutorial. */
.mentor-live.mentor-enter-live{
  animation:mentorEnterLive .68s cubic-bezier(.2,.85,.25,1.15);
}
@keyframes mentorEnterLive{
  0%{opacity:0;transform:translateY(40px) scale(.72)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}

/* He changes side depending on what he is teaching. */
.mentor-live{
  transition:left .42s ease,right .42s ease,bottom .35s ease,transform .25s ease!important;
}
.mentor-live.mentor-side-left{
  left:18px!important;
  right:auto!important;
}
.mentor-live.mentor-side-right{
  left:auto!important;
  right:18px!important;
}
.mentor-live.mentor-target-high{
  bottom:42px!important;
}
.mentor-live.mentor-attention .mentor-character img{
  animation:mentorAttention .48s ease;
}
@keyframes mentorAttention{
  0%{transform:translateY(0) rotate(0)}
  35%{transform:translateY(-8px) rotate(-1.5deg)}
  70%{transform:translateY(-3px) rotate(1deg)}
  100%{transform:translateY(0) rotate(0)}
}

/* Bubble side adapts when the mentor moves to the right. */
.mentor-side-right{
  flex-direction:row-reverse;
}
.mentor-side-right .mentor-bubble{
  margin-left:0;
  margin-right:-6px;
}
.mentor-side-right .mentor-bubble:before{
  left:auto;
  right:-10px;
  transform:rotate(225deg);
}

/* Keep focused targets clearly above the rest without blacking the UI out. */
.mentor-focus{
  transition:outline-color .2s ease,box-shadow .2s ease;
}
.mentor-focus[data-mentor-tag="RUNE CONSEILLÉE"],
.mentor-focus[data-mentor-tag="PRENDS CETTE RUNE"]{
  outline-color:#b38cff!important;
  box-shadow:0 0 0 5px rgba(143,101,211,.17),0 0 30px rgba(143,101,211,.34)!important;
}
.mentor-focus[data-mentor-tag="FUSIONNE ×1"],
.mentor-focus[data-mentor-tag="FUSIONNER"]{
  outline-color:#f19a39!important;
  box-shadow:0 0 0 5px rgba(241,154,57,.17),0 0 32px rgba(241,119,37,.38)!important;
}

@media(max-width:800px){
  .mentor-intro-scene{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .mentor-intro-character{
    min-height:185px;
  }
  .mentor-intro-character img{
    width:155px;
    max-height:190px;
  }
  .mentor-intro-glow{
    left:50%;
    right:auto;
    width:180px;
    height:150px;
    transform:translateX(-50%);
    bottom:4px;
  }
  .mentor-intro-name{bottom:5px}
  .mentor-intro-dialog{
    margin:5px 16px 18px;
  }
  .mentor-dialog-tail{display:none}
  .mentor-live.mentor-side-left,
  .mentor-live.mentor-side-right{
    left:8px!important;
    right:auto!important;
  }
}


/* =====================================================================
   V6.3 — Tutoriel réellement pas-à-pas : le Mentor ATTEND le joueur.
   ===================================================================== */

.mentor-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  border-top:1px solid #393d34;
}
.mentor-actions button{
  width:100%;
  min-height:34px;
  border:0;
  border-bottom:1px solid #30342c;
  cursor:pointer;
  font-size:9px;
  font-weight:700;
}
.mentor-actions button:last-child{border-bottom:0}

.mentor-confirm{
  background:linear-gradient(180deg,#a96527,#75421e);
  color:#ffebc4;
}
.mentor-confirm:hover{
  filter:brightness(1.12);
}

.mentor-finish{
  background:#192119;
  color:#98bc79;
}
.mentor-finish:hover{
  background:#202b1f;
  color:#c4e1aa;
}

.mentor-show-target{
  border-top:0!important;
}

.mentor-confirm.hidden,
.mentor-finish.hidden{
  display:none!important;
}

/* Le robot n'a plus de faux damier interne ; contour plus naturel. */
.mentor-character img,
.mentor-intro-character img,
.onboarding-mentor{
  image-rendering:auto;
}

/* Pendant une étape bloquante, la cible est encore plus explicite. */
.mentor-focus[data-mentor-tag="CLIQUE CETTE RUNE"],
.mentor-focus[data-mentor-tag="PRENDS CELLE-CI"]{
  outline-color:#b68aff!important;
  box-shadow:
    0 0 0 5px rgba(158,104,225,.20),
    0 0 34px rgba(149,89,225,.45)!important;
}
.mentor-focus[data-mentor-tag="CLIQUE UNE FOIS"]{
  outline-color:#ffa13d!important;
  box-shadow:
    0 0 0 5px rgba(255,145,47,.20),
    0 0 36px rgba(242,117,32,.48)!important;
}

.mentor-bubble-body p{
  font-size:10.5px!important;
  line-height:1.55!important;
}

/* Résultat : vert/rouge très lisible pour un vrai débutant. */
.effects-table tr.mentor-change-up{
  animation:mentorResultUp .75s ease;
}
.effects-table tr.mentor-change-down{
  animation:mentorResultDown .75s ease;
}
@keyframes mentorResultUp{
  0%{box-shadow:inset 0 0 35px rgba(85,210,80,.45)}
  100%{box-shadow:inset 0 0 22px rgba(86,168,74,.11)}
}
@keyframes mentorResultDown{
  0%{box-shadow:inset 0 0 35px rgba(231,80,55,.46)}
  100%{box-shadow:inset 0 0 22px rgba(188,76,52,.12)}
}


/* V6.3.1 — correction visuelle du fond du Mentor */
.mentor-character,
.mentor-intro-character{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.mentor-character img,
.mentor-intro-character img,
.onboarding-mentor{
  background:transparent!important;
  mix-blend-mode:normal!important;
}
.mentor-intro-character:before,
.mentor-intro-character:after,
.mentor-character:before,
.mentor-character:after{
  background:none!important;
}

/* La zone gauche de l'introduction se fond dans la modale :
   plus de rectangle visuel derrière le robot. */
.mentor-intro-scene{
  background:
    radial-gradient(circle at 20% 58%,rgba(227,137,39,.12),transparent 33%),
    linear-gradient(90deg,transparent 0,rgba(28,33,26,.48) 40%,rgba(24,28,23,.86) 100%)!important;
}


/* =====================================================================
   V6.3.2 — Lisibilité Mentor + suppression des textes tronqués
   ===================================================================== */

.mentor-live{
  width:min(680px,calc(100vw - 250px))!important;
  height:auto!important;
  min-height:250px!important;
  align-items:flex-end!important;
}

.mentor-character{
  flex:0 0 205px!important;
  height:250px!important;
}
.mentor-character img{
  width:210px!important;
  max-height:255px!important;
  bottom:-4px!important;
}

.mentor-bubble{
  width:455px!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  margin-bottom:16px!important;
}

.mentor-bubble-head{
  min-height:52px!important;
  padding:9px 10px 9px 14px!important;
}
.mentor-bubble-head b{
  font-size:15px!important;
}
.mentor-bubble-head small{
  margin-top:2px!important;
  font-size:10px!important;
}

.mentor-bubble-body{
  padding:15px 17px 16px!important;
  overflow:visible!important;
  max-height:none!important;
}

.mentor-step{
  margin-bottom:9px!important;
  padding:4px 8px!important;
  font-size:9px!important;
}

.mentor-bubble-body strong,
#mentorLiveTitle{
  margin-bottom:8px!important;
  font-size:18px!important;
  line-height:1.28!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
}

.mentor-bubble-body p,
#mentorLiveText{
  margin:0!important;
  font-size:13px!important;
  line-height:1.62!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
}

.mentor-actions button{
  min-height:42px!important;
  padding:8px 12px!important;
  font-size:11px!important;
  line-height:1.35!important;
  white-space:normal!important;
}

#mentorMinimize{
  width:30px!important;
  height:30px!important;
  font-size:16px!important;
}

/* Le titre/texte du Coach intégré est aussi agrandi pour rester cohérent. */
.coach-panel{
  font-size:13px!important;
}
#coachTitle{
  font-size:17px!important;
  line-height:1.35!important;
}
#coachWhat,
#coachWhy,
#coachAction,
#coachTip{
  font-size:12.5px!important;
  line-height:1.65!important;
}

/* Introduction du Mentor : textes plus confortables. */
.mentor-intro-dialog h2{
  font-size:28px!important;
  line-height:1.2!important;
}
.mentor-intro-dialog>p{
  font-size:14px!important;
  line-height:1.7!important;
}
.mentor-intro-dialog .onboarding-explain strong{
  font-size:13px!important;
}
.mentor-intro-dialog .onboarding-explain span{
  font-size:13px!important;
  line-height:1.65!important;
}
.mentor-intro-dialog .onboarding-primary{
  font-size:14px!important;
}

/* Empêche le dock de sortir visuellement en bas de l'écran. */
.mentor-live.mentor-target-high{
  bottom:26px!important;
}

/* Version réduite : garde une taille compacte propre. */
.mentor-live.minimized{
  width:190px!important;
  min-height:160px!important;
}
.mentor-live.minimized .mentor-character{
  flex-basis:125px!important;
  height:165px!important;
}
.mentor-live.minimized .mentor-character img{
  width:140px!important;
  max-height:170px!important;
}

/* Aucun fond blanc derrière les images Mentor. */
.mentor-character img,
.mentor-intro-character img,
.onboarding-mentor{
  background-color:transparent!important;
  background-image:none!important;
}

/* Responsive */
@media(max-width:1150px){
  .mentor-live{
    width:min(590px,calc(100vw - 20px))!important;
    left:10px!important;
    right:auto!important;
  }
  .mentor-character{
    flex-basis:165px!important;
  }
  .mentor-character img{
    width:170px!important;
  }
  .mentor-bubble{
    width:min(410px,calc(100vw - 190px))!important;
  }
}

@media(max-width:680px){
  .mentor-character{display:none!important}
  .mentor-live{
    width:calc(100vw - 16px)!important;
    min-height:0!important;
  }
  .mentor-bubble{
    width:100%!important;
    margin:0!important;
  }
  .mentor-bubble-body strong,
  #mentorLiveTitle{
    font-size:16px!important;
  }
  .mentor-bubble-body p,
  #mentorLiveText{
    font-size:12px!important;
  }
}

/* V6.4 — résultats plus lisibles et pédagogiques */
.history-line.sc{border-left:3px solid #72b65b!important}
.history-line.sn{border-left:3px solid #d0a44d!important}
.history-line.ec{border-left:3px solid #b85d47!important}

#mentorLiveText{
  max-width:none!important;
}

.coach-kicker{
  letter-spacing:.10em!important;
}


/* =====================================================================
   V6.5 — Identification joueur avant toute session
   ===================================================================== */
.profile-gate{
  position:fixed;
  inset:0;
  z-index:12000;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(5,7,5,.84);
  backdrop-filter:blur(7px);
}
.profile-gate.hidden{display:none!important}
body.profile-gate-open{overflow:hidden}

.profile-gate-card{
  width:min(790px,calc(100vw - 30px));
  min-height:470px;
  display:grid;
  grid-template-columns:300px 1fr;
  overflow:hidden;
  border:1px solid #8c7040;
  border-radius:9px;
  background:
    radial-gradient(circle at 15% 55%,rgba(229,139,37,.16),transparent 28%),
    linear-gradient(90deg,#151914 0,#1a1f19 39%,#141814 100%);
  box-shadow:0 0 0 3px #080a08,0 35px 110px #000;
}

.profile-mentor-side{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:hidden;
}
.profile-mentor-side img{
  position:relative;
  z-index:2;
  width:285px;
  max-height:440px;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 12px 12px rgba(0,0,0,.58));
}
.profile-mentor-side>span{
  position:absolute;
  z-index:4;
  left:50%;
  bottom:14px;
  transform:translateX(-50%);
  padding:5px 9px;
  border:1px solid #765b34;
  border-radius:3px;
  background:rgba(19,18,14,.92);
  color:#dfb968;
  font-size:8px;
  font-weight:900;
  letter-spacing:.14em;
  white-space:nowrap;
}
.profile-mentor-glow{
  position:absolute;
  left:30px;right:20px;bottom:30px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(234,145,42,.22),rgba(117,66,25,.05) 55%,transparent 72%);
}

.profile-gate-content{
  padding:38px 38px 34px 22px;
  align-self:center;
}
.profile-gate-kicker{
  margin-bottom:8px;
  color:#d9a74d;
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
}
.profile-gate-content h2{
  margin:0 0 12px;
  color:#f0e2bc;
  font-family:Georgia,serif;
  font-size:28px;
  font-weight:500;
}
.profile-gate-content>p{
  margin:0 0 24px;
  color:#abb3a8;
  font-size:13px;
  line-height:1.65;
}

.profile-field{
  display:flex;
  flex-direction:column;
  gap:7px;
  margin-bottom:18px;
}
.profile-field>span,
.profile-guild legend{
  color:#d9d9cf;
  font-size:11px;
  font-weight:800;
}
.profile-field input{
  min-height:44px;
  padding:0 13px;
  border:1px solid #4a5346;
  border-radius:4px;
  outline:none;
  background:#0d110d;
  color:#f1f1e9;
  font-size:14px;
}
.profile-field input:focus{
  border-color:#c28e43;
  box-shadow:0 0 0 2px rgba(194,142,67,.16);
}

.profile-guild{
  margin:0 0 19px;
  padding:0;
  border:0;
}
.profile-guild legend{margin-bottom:9px}
.profile-guild label{
  min-height:52px;
  margin-bottom:7px;
  padding:8px 11px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid #3b4438;
  border-radius:4px;
  background:#141914;
  cursor:pointer;
}
.profile-guild label:has(input:checked){
  border-color:#a77a3c;
  background:#211d15;
  box-shadow:inset 3px 0 #d28a30;
}
.profile-guild input{accent-color:#cf852f}
.profile-guild label>span{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.profile-guild b{
  color:#e7e2d2;
  font-size:12px;
}
.profile-guild small{
  color:#747e72;
  font-size:9px;
}

.profile-error{
  margin-bottom:10px;
  padding:8px 10px;
  border:1px solid #774033;
  border-radius:3px;
  background:#351e19;
  color:#eda491;
  font-size:10px;
}
.profile-error.hidden{display:none!important}

.profile-submit{
  width:100%;
  min-height:47px;
  border:1px solid #e1aa52;
  border-radius:4px;
  background:linear-gradient(#dc8b2f,#a95520);
  color:#fff0d4;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}
.profile-submit:hover:not(:disabled){filter:brightness(1.08)}
.profile-submit:disabled{opacity:.65;cursor:wait}
.profile-privacy{
  display:block;
  margin-top:10px;
  color:#697267;
  font-size:8px;
  line-height:1.4;
}

@media(max-width:700px){
  .profile-gate-card{
    grid-template-columns:1fr;
  }
  .profile-mentor-side{
    min-height:190px;
  }
  .profile-mentor-side img{
    width:145px;
    max-height:190px;
  }
  .profile-gate-content{
    padding:22px;
  }
}


/* =====================================================================
   V6.5.1 — Serveur / guilde du joueur
   ===================================================================== */
.external-player-fields{
  margin-top:-5px;
  margin-bottom:18px;
  padding:14px;
  border:1px solid #3e473a;
  border-radius:5px;
  background:#101510;
}
.external-player-fields.hidden{display:none!important}

.profile-field select{
  min-height:44px;
  padding:0 38px 0 13px;
  border:1px solid #4a5346;
  border-radius:4px;
  outline:none;
  background:#0d110d;
  color:#f1f1e9;
  font-size:13px;
  cursor:pointer;
}
.profile-field select:focus{
  border-color:#c28e43;
  box-shadow:0 0 0 2px rgba(194,142,67,.16);
}
.profile-field select optgroup{
  background:#171c17;
  color:#d7b66f;
}
.profile-field select option{
  background:#101410;
  color:#e3e6de;
}
.profile-field>small{
  margin-top:-2px;
  color:#6f786d;
  font-size:9px;
  line-height:1.4;
}

.profile-no-guild{
  min-height:38px;
  padding:7px 10px;
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid #343c32;
  border-radius:4px;
  background:#141914;
  color:#aeb5aa;
  font-size:10px;
  cursor:pointer;
}
.profile-no-guild input{
  accent-color:#cf852f;
}


/* =====================================================================
   V6.6 — Reprise d'une session inachevée
   ===================================================================== */
.resume-gate{
  position:fixed;inset:0;z-index:11950;
  display:grid;place-items:center;padding:20px;
  background:rgba(5,7,5,.86);
  backdrop-filter:blur(7px);
}
.resume-gate.hidden{display:none!important}
.resume-card{
  width:min(760px,calc(100vw - 28px));
  min-height:360px;
  display:grid;
  grid-template-columns:260px 1fr;
  overflow:hidden;
  border:1px solid #8c7040;border-radius:8px;
  background:linear-gradient(90deg,#151914,#191d18 42%,#111511);
  box-shadow:0 0 0 3px #080a08,0 35px 110px #000;
}
.resume-mentor{
  position:relative;display:flex;align-items:flex-end;justify-content:center;
  background:radial-gradient(circle at 50% 70%,rgba(219,132,35,.16),transparent 55%);
}
.resume-mentor img{
  width:245px;max-height:350px;object-fit:contain;object-position:center bottom;
  filter:drop-shadow(0 12px 12px rgba(0,0,0,.55));
}
.resume-content{align-self:center;padding:32px 35px 32px 10px}
.resume-kicker{color:#d5a14c;font-size:8px;font-weight:900;letter-spacing:.14em;margin-bottom:8px}
.resume-content h2{margin:0 0 10px;color:#f0e2bc;font:500 27px/1.2 Georgia,serif}
.resume-content>p{margin:0 0 17px;color:#aab2a7;font-size:12px;line-height:1.6}
.resume-details{
  margin-bottom:19px;padding:13px 14px;display:flex;flex-direction:column;gap:4px;
  border:1px solid #3d4639;border-radius:4px;background:#0e130e;
}
.resume-details strong{color:#e7d8b4;font-size:13px}
.resume-details span{color:#7f897c;font-size:9px}
.resume-actions{display:flex;flex-direction:column;gap:8px}
.resume-actions button{min-height:43px;border-radius:4px;font-size:11px;font-weight:800;cursor:pointer}
.resume-primary{border:1px solid #e1aa52;background:linear-gradient(#dc8b2f,#a95520);color:#fff0d4}
.resume-secondary{border:1px solid #424b3f;background:#171c17;color:#9ea79b}
@media(max-width:650px){
 .resume-card{grid-template-columns:1fr}
 .resume-mentor{height:160px}
 .resume-mentor img{width:140px;max-height:160px}
 .resume-content{padding:22px}
}
