/* MR Theory Board v0.4.3 - fullscreen board */

.mrtb-app,
.mrtb-app *{
  box-sizing:border-box;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
}

.mrtb-app{
  --mrtb-bg1:#75ddff;
  --mrtb-bg2:#b9f27d;
  --mrtb-panel:rgba(255,255,255,.88);
  --mrtb-line:rgba(20,25,40,.86);
  --mrtb-ink:#263044;
  --mrtb-accent:#ffb82e;
  --mrtb-accent2:#ff6b9a;
  --mrtb-good:#32c972;
  --mrtb-blue:#4697ff;
  width:100vw;
  max-width:100vw;
  height:max(var(--mrtb-height,780px), calc(100vh - 28px));
  min-height:620px;
  margin-left:calc(50% - 50vw);
  position:relative;
  overflow:hidden;
  border-radius:18px;
  color:var(--mrtb-ink);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 12% 12%, rgba(255,255,255,.9) 0 34px, transparent 36px),
    radial-gradient(circle at 22% 16%, rgba(255,255,255,.75) 0 24px, transparent 26px),
    radial-gradient(circle at 82% 14%, rgba(255,255,255,.8) 0 44px, transparent 46px),
    linear-gradient(180deg,var(--mrtb-bg1) 0%, #90e7ff 42%, var(--mrtb-bg2) 43%, #61d764 100%);
  box-shadow:0 18px 44px rgba(28,57,93,.22), inset 0 0 0 2px rgba(255,255,255,.55);
  outline:0;
}

.mrtb-app::before{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:116px;
  background:
    linear-gradient(135deg,rgba(58,184,70,.92) 25%,transparent 25%) 0 0/42px 42px,
    linear-gradient(225deg,rgba(49,165,62,.95) 25%,transparent 25%) 0 0/42px 42px,
    linear-gradient(180deg,#7dde65,#40be58);
  opacity:.9;
}

.mrtb-shell{
  position:absolute;
  inset:6px;
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:auto auto minmax(0,1fr);
  gap:8px;
  z-index:1;
}

.mrtb-topbar{
  grid-column:1;
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:space-between;
  padding:7px 9px;
  border-radius:18px;
  background:rgba(255,255,255,.78);
  border:2px solid rgba(255,255,255,.78);
  box-shadow:0 8px 18px rgba(35,72,92,.12);
  backdrop-filter:blur(8px);
}

.mrtb-title{
  display:flex;
  align-items:center;
  gap:9px;
  font-weight:900;
  letter-spacing:.2px;
}

.mrtb-subtitle{ color:#56657e; font-weight:800; }

.mrtb-title-badge{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:13px;
  background:linear-gradient(135deg,#ffef75,#ffae2f);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.12), 0 6px 14px rgba(255,175,47,.28);
}

.mrtb-top-actions,
.mrtb-tool-row{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  align-items:center;
}

.mrtb-tool-row.compact{ margin-top:5px; gap:5px; }

.mrtb-sidebar{
  grid-column:1;
  min-width:0;
  overflow:auto;
  padding:7px 8px;
  border-radius:18px;
  background:rgba(255,255,255,.8);
  border:2px solid rgba(255,255,255,.86);
  box-shadow:0 10px 20px rgba(35,72,92,.11);
  backdrop-filter:blur(8px);
  display:grid;
  grid-template-columns:minmax(250px,1.15fr) minmax(240px,1fr) minmax(220px,.9fr) minmax(260px,1.1fr);
  gap:8px;
  align-items:start;
  max-height:170px;
}

.mrtb-board-wrap{
  grid-column:1;
  position:relative;
  min-width:0;
  overflow:hidden;
  border-radius:20px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.28) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(0deg,rgba(255,255,255,.28) 1px,transparent 1px) 0 0/42px 42px,
    rgba(255,255,255,.52);
  border:2px solid rgba(255,255,255,.85);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.35), 0 12px 28px rgba(35,72,92,.14);
}

.mrtb-board{
  position:absolute;
  inset:0;
  overflow:auto;
  scrollbar-width:thin;
}

.mrtb-scroll-spacer{
  position:relative;
  width:100%;
  min-height:100%;
  pointer-events:none;
}

.mrtb-draw-canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:40;
  pointer-events:none;
}

.mrtb-app.mrtb-draw-on .mrtb-draw-canvas{
  pointer-events:auto;
  cursor:crosshair;
}


.mrtb-app.mrtb-tools-hidden .mrtb-shell{
  grid-template-rows:auto minmax(0,1fr);
}

.mrtb-app.mrtb-tools-hidden .mrtb-sidebar{
  display:none;
}

.mrtb-panel-title{
  margin:3px 0 6px;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.7px;
  color:#44526b;
}

.mrtb-btn,
.mrtb-select{
  min-height:32px;
  border:0;
  border-radius:12px;
  padding:6px 9px;
  font:inherit;
  font-size:13px;
  font-weight:850;
  color:#263044;
  background:rgba(255,255,255,.9);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.1), 0 5px 12px rgba(47,72,94,.12);
  cursor:pointer;
}

.mrtb-btn:hover,
.mrtb-select:hover{ transform:translateY(-1px); }

.mrtb-btn:active{
  transform:translateY(1px);
  box-shadow:inset 0 -1px 0 rgba(0,0,0,.12), 0 2px 6px rgba(47,72,94,.12);
}

.mrtb-btn.active{ background:linear-gradient(180deg,#ffe078,#ffb433); }
.mrtb-btn.good{ background:linear-gradient(180deg,#a9ff97,#43d574); }
.mrtb-btn.blue{ background:linear-gradient(180deg,#a7d7ff,#4697ff); color:#14294a; }
.mrtb-btn.pink{ background:linear-gradient(180deg,#ffc0d7,#ff6b9a); color:#491527; }
.mrtb-btn.danger{ background:linear-gradient(180deg,#ffc1c1,#ff6f6f); color:#571313; }

.mrtb-select{
  appearance:none;
  padding-right:30px;
  background-image:linear-gradient(45deg,transparent 50%,#263044 50%),linear-gradient(135deg,#263044 50%,transparent 50%);
  background-position:calc(100% - 18px) 13px,calc(100% - 12px) 13px;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}

.mrtb-palette-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(46px,1fr));
  gap:6px;
}

.mrtb-note-chip,
.mrtb-value-chip{
  position:relative;
  min-height:44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  text-align:center;
  font-weight:950;
  cursor:grab;
  background:linear-gradient(180deg,#fff,#f2f7ff);
  border:2px solid rgba(38,48,68,.08);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.09), 0 7px 14px rgba(35,72,92,.1);
  overflow:hidden;
}

.mrtb-note-chip::before{
  content:"";
  position:absolute;
  width:32px;
  height:32px;
  border-radius:50%;
  background:var(--chip,#ffd960);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.12);
  z-index:0;
}

.mrtb-note-chip strong,
.mrtb-note-chip small,
.mrtb-value-chip strong,
.mrtb-value-chip small{
  position:relative;
  z-index:1;
  display:block;
  line-height:1.05;
  text-shadow:0 1px 0 rgba(255,255,255,.7);
}

.mrtb-note-chip strong{ font-size:16px; }
.mrtb-note-chip small{ font-size:9px; margin-top:2px; }
.mrtb-value-chip strong{ font-size:18px; line-height:1; }
.mrtb-value-chip small{ font-size:9px; }

.mrtb-note-chip.selected,
.mrtb-value-chip.selected{ outline:4px solid rgba(255,184,46,.55); }

.mrtb-template-list{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }

.mrtb-equation-box{
  min-height:0;
  max-height:104px;
  overflow:auto;
  padding:8px;
  border-radius:14px;
  background:rgba(255,255,255,.78);
  border:2px dashed rgba(38,48,68,.16);
  font-size:12px;
  font-weight:850;
  line-height:1.3;
}

/* ===== μεγάλο πεντάγραμμο ===== */
.mrtb-staff{
  position:absolute;
  left:22px;
  right:22px;
  height:360px;
  border-radius:28px;
  background:rgba(255,255,255,.62);
  box-shadow:0 7px 18px rgba(35,72,92,.08), inset 0 0 0 2px rgba(255,255,255,.4);
  z-index:2;
}

.mrtb-staff:hover{ outline:3px solid rgba(255,184,46,.28); }
.mrtb-staff.active{
  outline:4px solid rgba(70,151,255,.34);
  box-shadow:0 12px 26px rgba(35,72,92,.13), inset 0 0 0 3px rgba(70,151,255,.16);
}

.mrtb-staff-lines{
  position:absolute;
  left:154px;
  right:38px;
  top:108px;
  height:168px;
}

.mrtb-barline{
  position:absolute;
  top:0;
  bottom:0;
  width:2px;
  background:rgba(20,25,40,.48);
  border-radius:3px;
}
.mrtb-barline.b1{ left:30%; }
.mrtb-barline.b2{ left:58%; }
.mrtb-barline.b3{ left:84%; }

.mrtb-line{
  position:absolute;
  left:0;
  right:0;
  height:2px;
  background:var(--mrtb-line);
  border-radius:2px;
}
.mrtb-line:nth-child(1){ top:0; }
.mrtb-line:nth-child(2){ top:42px; }
.mrtb-line:nth-child(3){ top:84px; }
.mrtb-line:nth-child(4){ top:126px; }
.mrtb-line:nth-child(5){ top:168px; }

.mrtb-clef{
  position:absolute;
  left:24px;
  top:78px;
  width:82px;
  text-align:center;
  font-size:118px;
  line-height:1;
  font-family:"Times New Roman",serif;
  color:#20263a;
  pointer-events:none;
}

.mrtb-time-sig{
  position:absolute;
  left:108px;
  top:116px;
  display:grid;
  font-size:54px;
  line-height:.82;
  font-weight:950;
  pointer-events:none;
}

.mrtb-staff-label{
  position:absolute;
  right:18px;
  top:12px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(255,184,46,.25);
  font-size:12px;
  font-weight:900;
  pointer-events:none;
}

.mrtb-staff.active .mrtb-staff-label{
  background:rgba(70,151,255,.22);
}

.mrtb-staff-hint{
  position:absolute;
  left:18px;
  bottom:12px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.76);
  font-size:12px;
  font-weight:850;
  pointer-events:none;
}

/* ===== notation note ===== */
.mrtb-board-note{
  position:absolute;
  z-index:18;
  width:96px;
  height:96px;
  cursor:pointer;
  filter:drop-shadow(0 8px 10px rgba(35,72,92,.12));
}

.mrtb-app.mrtb-move-on .mrtb-board-note{ cursor:grab; }
.mrtb-app.mrtb-delete-on .mrtb-board-note{ cursor:not-allowed; }
.mrtb-board-note.dragging{ z-index:25; cursor:grabbing; }
.mrtb-board-note.selected{
  outline:4px solid rgba(255,184,46,.7);
  border-radius:18px;
  background:rgba(255,255,255,.22);
}

.mrtb-note-glyph{
  position:absolute;
  left:27px;
  top:16px;
  width:56px;
  height:58px;
}

.mrtb-note-head{
  position:absolute;
  left:8px;
  top:20px;
  width:34px;
  height:23px;
  border:3px solid #1f2535;
  border-radius:50%;
  transform:rotate(-18deg);
  background:#1f2535;
}

.mrtb-note-glyph.open .mrtb-note-head{
  background:#fff;
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.6);
}

.mrtb-note-glyph.whole .mrtb-note-head{
  left:7px;
  top:20px;
  width:38px;
  height:24px;
  background:#fff;
  border-width:4px;
}

.mrtb-stem{
  position:absolute;
  width:4px;
  height:64px;
  background:#1f2535;
  border-radius:5px;
}

.mrtb-note-glyph.stem-up .mrtb-stem{ left:40px; top:-21px; }
.mrtb-note-glyph.stem-down .mrtb-stem{ left:8px; top:33px; }
.mrtb-note-glyph.whole .mrtb-stem{ display:none; }

.mrtb-flag{
  position:absolute;
  width:27px;
  height:20px;
  border-radius:0 15px 15px 0;
  border-right:4px solid #1f2535;
  border-bottom:4px solid #1f2535;
  transform:skewY(24deg);
}

.mrtb-note-glyph.stem-up .mrtb-flag.f1{ left:41px; top:-21px; }
.mrtb-note-glyph.stem-up .mrtb-flag.f2{ left:41px; top:-7px; }
.mrtb-note-glyph.stem-down .mrtb-flag{
  left:-15px;
  border-radius:15px 0 0 15px;
  border-right:0;
  border-left:4px solid #1f2535;
  transform:skewY(-24deg) rotate(180deg);
}
.mrtb-note-glyph.stem-down .mrtb-flag.f1{ top:78px; }
.mrtb-note-glyph.stem-down .mrtb-flag.f2{ top:64px; }

.mrtb-note-glyph.whole .mrtb-flag,
.mrtb-note-glyph.half .mrtb-flag,
.mrtb-note-glyph.quarter .mrtb-flag{ display:none; }
.mrtb-note-glyph.eighth .mrtb-flag.f2{ display:none; }

.mrtb-accidental{
  position:absolute;
  left:-15px;
  top:10px;
  font-family:"Times New Roman",serif;
  font-size:38px;
  line-height:1;
  font-weight:900;
  color:#1f2535;
}

.mrtb-ledgers{
  position:absolute;
  left:0;
  top:0;
  width:96px;
  height:96px;
  pointer-events:none;
}

.mrtb-ledgers span{
  position:absolute;
  left:16px;
  width:64px;
  height:3px;
  border-radius:4px;
  background:rgba(20,25,40,.86);
}

.mrtb-note-caption{
  position:absolute;
  left:50%;
  top:2px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:4px;
  padding:3px 7px;
  border-radius:999px;
  background:rgba(255,255,255,.9);
  border:2px solid var(--note-bg,#ffd960);
  color:#1d2638;
  font-size:11px;
  font-weight:950;
  white-space:nowrap;
  pointer-events:none;
}

/* Όταν οι νότες είναι συγχορδία, το όνομα πάει δίπλα,
   για να μη σκεπάζει την κεφαλή της νότας. */
.mrtb-board-note.mrtb-chord-note .mrtb-note-caption{
  left:84px;
  top:34px;
  transform:none;
  z-index:3;
  background:rgba(255,255,255,.96);
}

.mrtb-note-caption b{ font-size:13px; }
.mrtb-note-caption span{ opacity:.88; }

.mrtb-note-value{
  position:absolute;
  left:50%;
  bottom:-1px;
  transform:translateX(-50%);
  min-width:70px;
  text-align:center;
  padding:2px 7px;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  font-size:10px;
  font-weight:900;
  pointer-events:none;
}

/* ===== πλήρες πιανάκι ===== */
.mrtb-mini-piano{
  position:absolute;
  left:50%;
  top:396px;
  bottom:auto;
  transform:translateX(-50%);
  width:min(860px, calc(100% - 44px));
  min-height:138px;
  padding:9px 12px 12px;
  border-radius:22px;
  background:rgba(255,255,255,.88);
  box-shadow:0 12px 28px rgba(35,72,92,.18);
  z-index:30;
}

.mrtb-piano-label{
  text-align:center;
  font-size:12px;
  font-weight:950;
  color:#44526b;
  margin-bottom:5px;
}

.mrtb-piano-inner{
  position:relative;
  height:98px;
  margin:0 auto;
  max-width:800px;
}

.mrtb-white-keys{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(8,1fr);
  gap:3px;
}

.mrtb-key{
  border:0;
  font:inherit;
  font-weight:950;
  cursor:pointer;
}

.mrtb-key.white{
  height:98px;
  border-radius:0 0 14px 14px;
  background:linear-gradient(180deg,#fff,#eaf1fb);
  box-shadow:inset 0 -8px 0 rgba(0,0,0,.13), 0 5px 10px rgba(35,72,92,.12);
  color:#243044;
  padding-top:46px;
}

.mrtb-black-keys{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.mrtb-key.black{
  position:absolute;
  top:0;
  left:calc((100% / 8) * var(--x));
  width:calc((100% / 8) * .68);
  height:62px;
  transform:translateX(-50%);
  border-radius:0 0 12px 12px;
  background:linear-gradient(180deg,#2c3549,#101623);
  box-shadow:inset 0 -7px 0 rgba(255,255,255,.08), 0 6px 10px rgba(0,0,0,.22);
  color:#fff;
  z-index:2;
  pointer-events:auto;
  font-size:12px;
}

.mrtb-key small{ display:block; font-size:9px; line-height:1.1; opacity:.88; }

.mrtb-key:active,
.mrtb-key.playing{
  transform:translateY(4px);
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.13), 0 2px 5px rgba(35,72,92,.1);
}

.mrtb-key.black:active,
.mrtb-key.black.playing{
  transform:translateX(-50%) translateY(4px);
}

.mrtb-toast{
  position:absolute;
  right:18px;
  bottom:160px;
  z-index:60;
  max-width:min(380px,calc(100% - 36px));
  padding:12px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.92);
  box-shadow:0 12px 28px rgba(35,72,92,.18);
  font-weight:850;
  opacity:0;
  transform:translateY(10px);
  pointer-events:none;
  transition:.18s ease;
}

.mrtb-toast.show{ opacity:1; transform:translateY(0); }

.mrtb-cloud{
  position:absolute;
  z-index:0;
  width:126px;
  height:48px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  filter:drop-shadow(0 6px 8px rgba(65,112,147,.12));
  animation:mrtb-cloud 24s linear infinite;
}
.mrtb-cloud::before,
.mrtb-cloud::after{
  content:"";
  position:absolute;
  bottom:10px;
  width:56px;
  height:56px;
  border-radius:50%;
  background:inherit;
}
.mrtb-cloud::before{ left:18px; }
.mrtb-cloud::after{ right:20px; width:46px; height:46px; }
.mrtb-cloud.c1{ left:8%; top:78px; animation-duration:28s; }
.mrtb-cloud.c2{ left:62%; top:102px; animation-duration:36s; animation-delay:-14s; }

@keyframes mrtb-cloud{
  from{ transform:translateX(-20px); }
  50%{ transform:translateX(38px); }
  to{ transform:translateX(-20px); }
}

@media (max-width:900px){
  .mrtb-app{ min-height:max(var(--mrtb-height,780px),860px); }
  .mrtb-shell{
    inset:8px;
    grid-template-columns:1fr;
    grid-template-rows:auto 275px minmax(0,1fr);
  }
  .mrtb-topbar{ align-items:flex-start; flex-wrap:wrap; }
  .mrtb-sidebar{ order:1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:8px; }
  .mrtb-board-wrap{ order:2; }
  
.mrtb-app.mrtb-tools-hidden .mrtb-shell{
  grid-template-rows:auto minmax(0,1fr);
}

.mrtb-app.mrtb-tools-hidden .mrtb-sidebar{
  display:none;
}

.mrtb-panel-title{ margin:4px 0 6px; font-size:11px; }
  .mrtb-palette-grid{ grid-template-columns:repeat(7,1fr); }
  .mrtb-note-chip,.mrtb-value-chip{ min-height:44px; border-radius:14px; }
  .mrtb-note-chip::before{ width:31px; height:31px; }
  .mrtb-note-chip strong{ font-size:15px; }
  .mrtb-note-chip small{ display:none; }
  .mrtb-staff{ left:14px; right:14px; height:226px; }
  .mrtb-staff-lines{ left:106px; right:14px; top:70px; }
  .mrtb-clef{ left:8px; top:58px; font-size:72px; }
  .mrtb-time-sig{ left:78px; top:76px; font-size:34px; }
  .mrtb-staff-label{ font-size:10px; }
  .mrtb-staff-hint{ font-size:10px; max-width:70%; }
  .mrtb-mini-piano{ left:10px; right:10px; width:auto; transform:none; bottom:auto; }
  .mrtb-key.white{ font-size:12px; }
  .mrtb-key.black{ font-size:10px; }
}


/* ===== fullscreen compact overrides ===== */
@media (max-width:900px){
  .mrtb-app{
    width:100vw;
    max-width:100vw;
    height:max(var(--mrtb-height,780px), calc(100vh - 12px));
    min-height:720px;
    margin-left:calc(50% - 50vw);
    border-radius:14px;
  }
  .mrtb-shell{
    inset:4px;
    grid-template-columns:1fr;
    grid-template-rows:auto auto minmax(0,1fr);
    gap:5px;
  }
  .mrtb-app.mrtb-tools-hidden .mrtb-shell{
    grid-template-rows:auto minmax(0,1fr);
  }
  .mrtb-topbar{ padding:5px; border-radius:14px; align-items:flex-start; flex-wrap:wrap; }
  .mrtb-title{ font-size:13px; }
  .mrtb-subtitle{ display:none; }
  .mrtb-sidebar{
    order:initial;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px;
    max-height:205px;
    padding:6px;
    border-radius:14px;
  }
  .mrtb-app.mrtb-tools-hidden .mrtb-sidebar{ display:none; }
  .mrtb-board-wrap{ order:initial; }
  .mrtb-panel-title{ margin:2px 0 4px; font-size:10px; }
  .mrtb-btn,.mrtb-select{ min-height:30px; padding:5px 7px; font-size:12px; border-radius:11px; }
  .mrtb-palette-grid{ grid-template-columns:repeat(auto-fit,minmax(38px,1fr)); gap:5px; }
  .mrtb-template-list{ grid-template-columns:1fr; }
  .mrtb-equation-box{ max-height:82px; font-size:11px; padding:6px; }
  .mrtb-staff{ left:10px; right:10px; height:310px; border-radius:20px; }
  .mrtb-staff-lines{ left:104px; right:14px; top:98px; height:140px; }
  .mrtb-line:nth-child(1){ top:0; }
  .mrtb-line:nth-child(2){ top:35px; }
  .mrtb-line:nth-child(3){ top:70px; }
  .mrtb-line:nth-child(4){ top:105px; }
  .mrtb-line:nth-child(5){ top:140px; }
  .mrtb-clef{ left:8px; top:86px; font-size:82px; width:58px; }
  .mrtb-time-sig{ left:70px; top:108px; font-size:38px; }
  .mrtb-staff-label{ font-size:10px; }
  .mrtb-staff-hint{ font-size:10px; max-width:72%; }
  .mrtb-mini-piano{ left:10px; right:10px; width:auto; transform:none; min-height:132px; }
}


/* ===== compact top tools v0.3.5 ===== */
.mrtb-shell{
  inset:4px;
  grid-template-rows:auto auto minmax(0,1fr);
  gap:5px;
}

.mrtb-topbar{
  min-height:0;
  padding:4px 8px;
  border-radius:15px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:8px;
}

.mrtb-title{
  gap:7px;
  font-size:13px;
  line-height:1.05;
  white-space:nowrap;
}

.mrtb-title br,
.mrtb-subtitle{ display:none; }

.mrtb-title-badge{
  width:30px;
  height:30px;
  border-radius:11px;
  font-size:16px;
}

.mrtb-top-actions{
  justify-content:flex-end;
  gap:5px;
  flex-wrap:nowrap;
  min-width:0;
}

.mrtb-top-actions .mrtb-select{
  width:180px;
  min-width:150px;
  max-width:220px;
}

.mrtb-btn,
.mrtb-select{
  min-height:28px;
  padding:4px 8px;
  border-radius:10px;
  font-size:12px;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.1), 0 3px 8px rgba(47,72,94,.1);
}

.mrtb-select{
  padding-right:26px;
  background-position:calc(100% - 16px) 11px,calc(100% - 10px) 11px;
}

.mrtb-sidebar{
  padding:5px 7px;
  border-radius:15px;
  max-height:104px;
  overflow:auto;
  grid-template-columns:minmax(380px,1.05fr) minmax(270px,.65fr) minmax(420px,1fr) minmax(250px,.7fr);
  gap:7px;
  align-items:start;
}

.mrtb-panel-title{
  margin:0 0 4px;
  font-size:10px;
  line-height:1;
}

.mrtb-tool-row{
  gap:5px;
}

.mrtb-tool-row.compact{
  margin-top:4px;
  gap:4px;
}

.mrtb-values-section .mrtb-palette-grid{
  display:flex;
  flex-wrap:nowrap;
  gap:5px;
}

.mrtb-value-chip{
  min-height:38px;
  width:52px;
  min-width:52px;
  border-radius:12px;
}

.mrtb-value-chip strong{ font-size:16px; }
.mrtb-value-chip small{ font-size:8px; }

.mrtb-template-list{
  display:grid;
  grid-template-columns:repeat(5,minmax(64px,1fr));
  gap:5px;
}

.mrtb-template-list .mrtb-btn{
  min-height:34px;
  padding:5px 6px;
}

.mrtb-equation-box{
  max-height:60px;
  padding:5px 7px;
  border-radius:12px;
  font-size:10.5px;
  line-height:1.2;
}

.mrtb-board-wrap{
  border-radius:18px;
}

/* Αφού έφυγαν οι νότες από τα εργαλεία, δεν χρειάζεται μεγάλο toolbar. */
.mrtb-note-chip{ display:none; }

@media (max-width:1200px){
  .mrtb-top-actions{ flex-wrap:wrap; }
  .mrtb-sidebar{
    max-height:142px;
    grid-template-columns:1fr 1fr;
  }
  .mrtb-template-list{ grid-template-columns:repeat(3,minmax(74px,1fr)); }
}

@media (max-width:900px){
  .mrtb-shell{
    inset:3px;
    grid-template-rows:auto auto minmax(0,1fr);
    gap:4px;
  }
  .mrtb-topbar{
    padding:4px;
    grid-template-columns:1fr;
    gap:4px;
  }
  .mrtb-title{ display:none; }
  .mrtb-top-actions{
    justify-content:flex-start;
    flex-wrap:wrap;
  }
  .mrtb-top-actions .mrtb-select{
    width:150px;
    min-width:130px;
  }
  .mrtb-sidebar{
    max-height:158px;
    grid-template-columns:1fr 1fr;
    padding:5px;
    gap:5px;
  }
  .mrtb-values-section .mrtb-palette-grid{ flex-wrap:wrap; }
  .mrtb-value-chip{
    width:44px;
    min-width:44px;
    min-height:34px;
  }
  .mrtb-template-list{ grid-template-columns:repeat(2,minmax(70px,1fr)); }
  .mrtb-info-section{ display:none; }
  .mrtb-btn,.mrtb-select{ min-height:28px; padding:4px 6px; font-size:11px; }
}


/* ===== MR Theory Board clean compact toolbar v0.3.6 ===== */
.mrtb-top-actions .mrtb-btn[data-action="play-scale"],
.mrtb-top-actions .mrtb-btn[data-action="fx"],
.mrtb-template-list .mrtb-btn[data-template="value-equations"],
.mrtb-template-list .mrtb-btn[data-template="find-meter"],
.mrtb-template-list .mrtb-btn[data-template="intervals"],
.mrtb-template-list .mrtb-btn[data-template="modes"]{
  display:none !important;
}

.mrtb-sidebar{
  max-height:82px;
  padding:4px 6px;
  grid-template-columns:minmax(500px,1.3fr) minmax(320px,.75fr) minmax(86px,.18fr) minmax(300px,.65fr);
  gap:6px;
  overflow:hidden;
}

.mrtb-tools-section .mrtb-tool-row{
  flex-wrap:nowrap;
}

.mrtb-panel-title{
  margin:0 0 3px;
  font-size:9.5px;
}

.mrtb-tool-row{ gap:4px; }
.mrtb-tool-row.compact{ margin-top:3px; gap:4px; }

.mrtb-btn,
.mrtb-select{
  min-height:26px;
  padding:3px 7px;
  border-radius:9px;
  font-size:11.5px;
}

.mrtb-value-chip{
  min-height:34px;
  width:48px;
  min-width:48px;
  border-radius:11px;
}

.mrtb-value-chip strong{ font-size:15px; }
.mrtb-value-chip small{ font-size:7.5px; }

.mrtb-template-list{
  display:block;
}

.mrtb-template-list .mrtb-btn{
  min-height:52px;
  width:100%;
  padding:4px 6px;
}

.mrtb-equation-box{
  max-height:48px;
  padding:4px 6px;
  font-size:10px;
  line-height:1.15;
  overflow:hidden;
}

.mrtb-shell{
  grid-template-rows:auto auto minmax(0,1fr);
  gap:5px;
}

@media (max-width:1200px){
  .mrtb-sidebar{
    max-height:116px;
    grid-template-columns:1fr 1fr;
    overflow:hidden;
  }
  .mrtb-tools-section .mrtb-tool-row{ flex-wrap:wrap; }
  .mrtb-template-list .mrtb-btn{ min-height:34px; }
}

@media (max-width:900px){
  .mrtb-sidebar{
    max-height:126px;
    grid-template-columns:1fr 1fr;
    overflow:hidden;
  }
}

/* remove visible instructions section */
.mrtb-info-section{
  display:none !important;
}

/* πιο μαζεμένο πάνω toolbar χωρίς Οδηγίες */
.mrtb-sidebar{
  grid-template-columns:minmax(430px,1.1fr) minmax(300px,.75fr) 92px !important;
  max-height:74px !important;
  padding:4px 6px !important;
  gap:6px !important;
  overflow:hidden !important;
}

.mrtb-template-list .mrtb-btn{
  min-height:46px !important;
}

.mrtb-panel-title{
  font-size:9px !important;
  margin:0 0 2px !important;
}

.mrtb-btn,
.mrtb-select{
  min-height:24px !important;
  padding:2px 7px !important;
  font-size:11px !important;
}

.mrtb-value-chip{
  min-height:31px !important;
}

/* εργαλεία σε μία σειρά */
.mrtb-sidebar{
  grid-template-columns:minmax(760px,1fr) minmax(340px,.45fr) 130px !important;
  max-height:62px !important;
  overflow:hidden !important;
  align-items:center !important;
}

.mrtb-sidebar > section:first-child{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  min-width:0 !important;
  overflow:hidden !important;
}

.mrtb-sidebar > section:first-child .mrtb-panel-title{
  margin:0 6px 0 0 !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
}

.mrtb-sidebar > section:first-child .mrtb-tool-row{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:4px !important;
  margin:0 !important;
  flex:0 0 auto !important;
}

.mrtb-sidebar > section:first-child .mrtb-btn{
  white-space:nowrap !important;
  min-height:28px !important;
  padding:3px 7px !important;
  font-size:12px !important;
  border-radius:10px !important;
}

/* λίγο πιο μικρές αξίες για να χωράνε */
.mrtb-value-chip{
  min-height:30px !important;
  width:62px !important;
  border-radius:12px !important;
}

.mrtb-value-chip strong{
  font-size:19px !important;
}

.mrtb-value-chip small{
  font-size:9px !important;
}


/* ===== labels να μην ακουμπάνε τις νότες ===== */

/* Το όνομα νότας πάει πάντα δεξιά από τη νότα, όχι πάνω της */
.mrtb-note-caption{
  left:82px !important;
  top:30px !important;
  transform:none !important;
  z-index:5 !important;
  min-width:70px !important;
  justify-content:center !important;
  pointer-events:none !important;
}

/* Στις συγχορδίες ακόμα πιο έξω */
.mrtb-board-note.mrtb-chord-note .mrtb-note-caption{
  left:88px !important;
  top:30px !important;
  transform:none !important;
  z-index:6 !important;
}

/* Οι αξίες κρυφές by default */
.mrtb-note-value{
  display:none !important;
}

/* Όταν πατήσεις το κουμπί Αξίες, εμφανίζονται */
.mrtb-app.mrtb-show-values .mrtb-note-value{
  display:block !important;
}

/* Όταν φαίνονται, να πηγαίνουν αριστερά/κάτω, όχι πάνω στη νότα */
.mrtb-app.mrtb-show-values .mrtb-note-value{
  left:-48px !important;
  bottom:8px !important;
  transform:none !important;
  min-width:54px !important;
  max-width:64px !important;
  padding:2px 6px !important;
  font-size:10px !important;
  z-index:4 !important;
  pointer-events:none !important;
}

/* Στις συγχορδίες οι αξίες πάνε πιο αριστερά για να μη μπαίνουν ανάμεσα στις νότες */
.mrtb-app.mrtb-show-values .mrtb-board-note.mrtb-chord-note .mrtb-note-value{
  left:-58px !important;
  bottom:8px !important;
}

/* ===== template as dropdown in topbar ===== */

.mrtb-template-select{
  width:220px !important;
  min-width:190px !important;
  max-width:260px !important;
}

.mrtb-module-select{
  width:145px !important;
  min-width:125px !important;
  max-width:170px !important;
}

/* Το template section έφυγε από το sidebar */
.mrtb-templates-section{
  display:none !important;
}

/* Sidebar μόνο εργαλεία + αξίες */
.mrtb-sidebar{
  grid-template-columns:minmax(760px,1fr) minmax(340px,.45fr) !important;
}

@media (max-width:1200px){
  .mrtb-template-select{
    width:210px !important;
    min-width:180px !important;
  }

  .mrtb-sidebar{
    grid-template-columns:1fr 1fr !important;
  }
}

@media (max-width:900px){
  .mrtb-module-select{
    width:120px !important;
    min-width:110px !important;
  }

  .mrtb-template-select{
    width:190px !important;
    min-width:170px !important;
  }
}

/* ===== μικρά σωστά ζωγραφισμένα κουμπιά αξιών ===== */

.mrtb-values-section .mrtb-palette-grid{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:4px !important;
  align-items:center !important;
}

.mrtb-value-chip{
  width:46px !important;
  min-width:46px !important;
  height:48px !important;
  min-height:48px !important;
  padding:2px !important;
  border-radius:13px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  overflow:hidden !important;
}

.mrtb-value-chip strong{
  display:none !important;
}

.mrtb-value-chip small{
  display:block !important;
  font-size:9px !important;
  line-height:.95 !important;
  font-weight:950 !important;
  text-align:center !important;
  white-space:normal !important;
  max-width:42px !important;
}

/* μικρό εικονίδιο νότας */
.mrtb-value-icon{
  position:relative !important;
  display:block !important;
  width:30px !important;
  height:28px !important;
  flex:0 0 28px !important;
}

/* κεφαλή */
.mrtb-value-head{
  position:absolute !important;
  left:5px !important;
  top:14px !important;
  width:18px !important;
  height:12px !important;
  border:2.5px solid #1f2535 !important;
  border-radius:50% !important;
  transform:rotate(-18deg) !important;
  background:#1f2535 !important;
}

/* ανοιχτή κεφαλή για ολόκληρο / μισό */
.mrtb-value-icon.open .mrtb-value-head{
  background:#fff !important;
}

/* ολόκληρο χωρίς γραμμή */
.mrtb-value-icon.whole .mrtb-value-head{
  left:4px !important;
  top:15px !important;
  width:22px !important;
  height:12px !important;
  border-width:3px !important;
  background:#fff !important;
}

/* γραμμή/stem προς τα πάνω */
.mrtb-value-stem{
  position:absolute !important;
  left:22px !important;
  top:0 !important;
  width:3px !important;
  height:25px !important;
  border-radius:4px !important;
  background:#1f2535 !important;
}

/* ολόκληρο χωρίς stem */
.mrtb-value-icon.whole .mrtb-value-stem{
  display:none !important;
}

/* ουρίτσες: όταν η γραμμή είναι από πάνω, οι ουρίτσες κατεβαίνουν προς τα κάτω */
.mrtb-value-flag{
  position:absolute !important;
  left:22px !important;
  width:14px !important;
  height:9px !important;
  border-right:3px solid #1f2535 !important;
  border-bottom:3px solid #1f2535 !important;
  border-radius:0 10px 10px 0 !important;
  transform:skewY(25deg) !important;
}

/* ουρίτσες από πάνω προς τα κάτω */
.mrtb-value-flag.f1{ top:0 !important; }
.mrtb-value-flag.f2{ top:7px !important; }
.mrtb-value-flag.f3{ top:14px !important; }
.mrtb-value-flag.f4{ top:21px !important; }

/* ολόκληρο, μισό, τέταρτο χωρίς ουρίτσα */
.mrtb-value-icon.whole .mrtb-value-flag,
.mrtb-value-icon.half .mrtb-value-flag,
.mrtb-value-icon.quarter .mrtb-value-flag{
  display:none !important;
}

/* όγδοο = 1 ουρίτσα */
.mrtb-value-icon.eighth .mrtb-value-flag.f2,
.mrtb-value-icon.eighth .mrtb-value-flag.f3,
.mrtb-value-icon.eighth .mrtb-value-flag.f4{
  display:none !important;
}

/* 16ο = 2 ουρίτσες */
.mrtb-value-icon.sixteenth .mrtb-value-flag.f3,
.mrtb-value-icon.sixteenth .mrtb-value-flag.f4{
  display:none !important;
}

/* 32ο = 3 ουρίτσες */
.mrtb-value-icon.thirtysecond .mrtb-value-flag.f4{
  display:none !important;
}

/* 64ο = 4 ουρίτσες, άρα δεν κρύβουμε τίποτα */

/* Να χωράνε όλες οι αξίες */
.mrtb-sidebar{
  grid-template-columns:minmax(720px,1fr) minmax(360px,.5fr) !important;
}

@media (max-width:1200px){
  .mrtb-values-section .mrtb-palette-grid{
    flex-wrap:wrap !important;
  }

  .mrtb-sidebar{
    grid-template-columns:1fr 1fr !important;
    max-height:126px !important;
  }
}

@media (max-width:900px){
  .mrtb-value-chip{
    width:42px !important;
    min-width:42px !important;
    height:44px !important;
    min-height:44px !important;
  }

  .mrtb-value-icon{
    transform:scale(.88) !important;
  }

  .mrtb-value-chip small{
    font-size:8.5px !important;
  }
}

/* ===== αξίες σωστά ζωγραφισμένες μικρές ===== */

.mrtb-values-section .mrtb-palette-grid{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:4px !important;
  align-items:center !important;
}

.mrtb-value-chip{
  width:44px !important;
  min-width:44px !important;
  height:48px !important;
  min-height:48px !important;
  padding:2px !important;
  border-radius:13px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  overflow:hidden !important;
}

.mrtb-value-chip strong{
  display:none !important;
}

.mrtb-value-chip small{
  display:block !important;
  font-size:8.5px !important;
  line-height:.9 !important;
  font-weight:950 !important;
  text-align:center !important;
  max-width:40px !important;
  white-space:normal !important;
}

/* κουτάκι εικονιδίου */
.mrtb-value-icon{
  position:relative !important;
  display:block !important;
  width:30px !important;
  height:30px !important;
  flex:0 0 30px !important;
}

/* κεφαλή νότας */
.mrtb-value-head{
  position:absolute !important;
  left:4px !important;
  top:18px !important;
  width:18px !important;
  height:11px !important;
  border:2.4px solid #1f2535 !important;
  border-radius:50% !important;
  transform:rotate(-18deg) !important;
  background:#1f2535 !important;
}

/* ανοιχτή κεφαλή: ολόκληρο / μισό */
.mrtb-value-icon.open .mrtb-value-head{
  background:#fff !important;
}

/* ολόκληρο: μόνο ανοιχτή οβάλ κεφαλή, χωρίς stem */
.mrtb-value-icon.whole .mrtb-value-head{
  left:4px !important;
  top:17px !important;
  width:22px !important;
  height:12px !important;
  border-width:3px !important;
  background:#fff !important;
}

.mrtb-value-icon.whole .mrtb-value-stem,
.mrtb-value-icon.whole .mrtb-value-flag{
  display:none !important;
}

/* stem προς τα πάνω, δεξιά από την κεφαλή */
.mrtb-value-stem{
  position:absolute !important;
  left:21px !important;
  top:2px !important;
  width:3.4px !important;
  height:24px !important;
  border-radius:4px !important;
  background:#1f2535 !important;
}

/* ουρίτσες καμπύλες — όχι γωνίες */
.mrtb-value-flag{
  position:absolute !important;
  left:21px !important;
  width:16px !important;
  height:12px !important;
  border:0 !important;
  border-top:4px solid #1f2535 !important;
  border-radius:0 13px 12px 0 !important;
  background:transparent !important;
  transform-origin:left top !important;
  transform:rotate(24deg) !important;
}

/* όταν το stem είναι πάνω, οι ουρίτσες κατεβαίνουν */
.mrtb-value-flag.f1{ top:2px !important; }
.mrtb-value-flag.f2{ top:8px !important; }
.mrtb-value-flag.f3{ top:14px !important; }
.mrtb-value-flag.f4{ top:20px !important; }

/* μισό και τέταρτο δεν έχουν ουρίτσα */
.mrtb-value-icon.half .mrtb-value-flag,
.mrtb-value-icon.quarter .mrtb-value-flag{
  display:none !important;
}

/* όγδοο = 1 ουρίτσα */
.mrtb-value-icon.eighth .mrtb-value-flag.f2,
.mrtb-value-icon.eighth .mrtb-value-flag.f3,
.mrtb-value-icon.eighth .mrtb-value-flag.f4{
  display:none !important;
}

/* 16ο = 2 ουρίτσες */
.mrtb-value-icon.sixteenth .mrtb-value-flag.f3,
.mrtb-value-icon.sixteenth .mrtb-value-flag.f4{
  display:none !important;
}

/* 32ο = 3 ουρίτσες */
.mrtb-value-icon.thirtysecond .mrtb-value-flag.f4{
  display:none !important;
}

/* 64ο = 4 ουρίτσες */

/* Να χωράνε όλες οι αξίες */
.mrtb-sidebar{
  grid-template-columns:minmax(720px,1fr) minmax(360px,.5fr) !important;
}

@media (max-width:1200px){
  .mrtb-values-section .mrtb-palette-grid{
    flex-wrap:wrap !important;
  }

  .mrtb-sidebar{
    grid-template-columns:1fr 1fr !important;
    max-height:126px !important;
  }
}

@media (max-width:900px){
  .mrtb-value-chip{
    width:41px !important;
    min-width:41px !important;
    height:44px !important;
    min-height:44px !important;
  }

  .mrtb-value-icon{
    transform:scale(.88) !important;
  }

  .mrtb-value-chip small{
    font-size:8px !important;
  }
}

/* ===== σωστές ουρίτσες στις νότες πάνω στο πεντάγραμμο ===== */

/* stem up: ουρίτσα δεξιά και προς τα κάτω */
.mrtb-note-glyph.stem-up .mrtb-flag{
  left:41px !important;
  width:30px !important;
  height:18px !important;
  border:0 !important;
  border-top:5px solid #1f2535 !important;
  border-radius:0 18px 16px 0 !important;
  background:transparent !important;
  transform-origin:left top !important;
  transform:rotate(24deg) !important;
}

.mrtb-note-glyph.stem-up .mrtb-flag.f1{ top:-21px !important; }
.mrtb-note-glyph.stem-up .mrtb-flag.f2{ top:-8px !important; }
.mrtb-note-glyph.stem-up .mrtb-flag.f3{ top:5px !important; }
.mrtb-note-glyph.stem-up .mrtb-flag.f4{ top:18px !important; }

/* stem down: ουρίτσα αριστερά και προς τα πάνω */
.mrtb-note-glyph.stem-down .mrtb-flag{
  left:-20px !important;
  width:30px !important;
  height:18px !important;
  border:0 !important;
  border-top:5px solid #1f2535 !important;
  border-radius:18px 0 0 16px !important;
  background:transparent !important;
  transform-origin:right top !important;
  transform:rotate(204deg) !important;
}

.mrtb-note-glyph.stem-down .mrtb-flag.f1{ top:91px !important; }
.mrtb-note-glyph.stem-down .mrtb-flag.f2{ top:78px !important; }
.mrtb-note-glyph.stem-down .mrtb-flag.f3{ top:65px !important; }
.mrtb-note-glyph.stem-down .mrtb-flag.f4{ top:52px !important; }

.mrtb-note-glyph.whole .mrtb-flag,
.mrtb-note-glyph.half .mrtb-flag,
.mrtb-note-glyph.quarter .mrtb-flag{
  display:none !important;
}

.mrtb-note-glyph.eighth .mrtb-flag.f2,
.mrtb-note-glyph.eighth .mrtb-flag.f3,
.mrtb-note-glyph.eighth .mrtb-flag.f4{
  display:none !important;
}

.mrtb-note-glyph.sixteenth .mrtb-flag.f3,
.mrtb-note-glyph.sixteenth .mrtb-flag.f4{
  display:none !important;
}

.mrtb-note-glyph.thirtysecond .mrtb-flag.f4{
  display:none !important;
}


/* ===== beams για συνεχόμενα όγδοα / 16α / 32α / 64α ===== */

.mrtb-note-beam{
  position:absolute;
  z-index:24;
  height:6px;
  background:#1f2535;
  border-radius:2px;
  transform-origin:0 50%;
  pointer-events:none;
}

/* Όταν η νότα έχει beam, κρύβονται οι ουρίτσες */
.mrtb-board-note.mrtb-beamed-note .mrtb-flag{
  display:none !important;
}

.mrtb-board-note.mrtb-beamed-note{
  z-index:22;
}

/* ===== τελικό fix beams: stems ενώνονται με beam + accidentals μπροστά ===== */

.mrtb-note-beam{
  position:absolute;
  z-index:23 !important;
  height:6px;
  background:#1f2535;
  border-radius:2px;
  transform-origin:0 50%;
  pointer-events:none;
}

.mrtb-board-note.mrtb-beamed-note{
  z-index:26 !important;
}

.mrtb-board-note.mrtb-beamed-note .mrtb-flag{
  display:none !important;
}

.mrtb-board-note.mrtb-beamed-note .mrtb-note-glyph.stem-up .mrtb-stem,
.mrtb-board-note.mrtb-beamed-note .mrtb-note-glyph.stem-down .mrtb-stem{
  top:var(--beam-stem-top) !important;
  height:var(--beam-stem-height) !important;
}

/* Οι διέσεις/υφέσεις να μη σκεπάζονται από beams ή labels */
.mrtb-accidental{
  left:-24px !important;
  z-index:40 !important;
  min-width:22px !important;
  text-align:center !important;
  pointer-events:none !important;
}

.mrtb-board-note.mrtb-chord-no-stem .mrtb-stem,
.mrtb-board-note.mrtb-chord-no-stem .mrtb-flag{
  display:none !important;
}

.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph{
  z-index:3;
}

.mrtb-board-note.mrtb-chord-stem-owner .mrtb-stem{
  display:block !important;
}

/* ===== συγχορδίες: μία κάθετη γραμμή ενώνει όλες τις νότες ===== */

.mrtb-board-note.mrtb-chord-no-stem .mrtb-stem,
.mrtb-board-note.mrtb-chord-no-stem .mrtb-flag{
  display:none !important;
}

/* Η πάνω νότα κρατάει το κοινό stem της συγχορδίας */
.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph:not(.whole).stem-up .mrtb-stem{
  left:40px !important;
  top:var(--chord-stem-top, -21px) !important;
  height:var(--chord-stem-height, 64px) !important;
  display:block !important;
  z-index:5 !important;
}

/* Οι ουρίτσες μένουν μόνο στην πάνω νότα, πάνω στο κοινό stem */
.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph.eighth.stem-up .mrtb-flag.f1,
.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph.sixteenth.stem-up .mrtb-flag.f1,
.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph.sixteenth.stem-up .mrtb-flag.f2,
.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph.thirtysecond.stem-up .mrtb-flag.f1,
.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph.thirtysecond.stem-up .mrtb-flag.f2,
.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph.thirtysecond.stem-up .mrtb-flag.f3,
.mrtb-board-note.mrtb-chord-stem-owner .mrtb-note-glyph.sixtyfourth.stem-up .mrtb-flag{
  z-index:6 !important;
}

/* ===== συγχορδίες: ένα κοινό κάθετο stem ===== */

.mrtb-chord-stem-link{
  position:absolute;
  width:4px;
  background:#1f2535;
  border-radius:5px;
  z-index:21;
  pointer-events:none;
}

/* οι κάτω νότες της συγχορδίας δεν έχουν δικό τους stem/ουρίτσες */
.mrtb-board-note.mrtb-chord-no-stem .mrtb-stem,
.mrtb-board-note.mrtb-chord-no-stem .mrtb-flag{
  display:none !important;
}

/* η πάνω νότα κρατάει το stem και τις ουρίτσες */
.mrtb-board-note.mrtb-chord-stem-owner{
  z-index:26 !important;
}


/* ===== μικρό click box / μικρός selector για γραμμένες νότες ===== */
/* ΜΗΝ μικρύνεις το .mrtb-board-note / NOTE_BOX.
   Το 96x96 χρειάζεται για κέντρο, snap, drag και beams.
   Μικραίνουμε μόνο το πραγματικό σημείο κλικ και το ορατό selection. */

.mrtb-note-hitbox{
  position:absolute !important;
  left:24px !important;
  top:-8px !important;
  width:56px !important;
  height:112px !important;
  z-index:90 !important;
  border-radius:15px !important;
  background:transparent !important;
  pointer-events:auto !important;
  cursor:pointer !important;
}

/* Τα ταμπελάκια δεν είναι selector/click area */
.mrtb-note-caption,
.mrtb-note-value{
  pointer-events:none !important;
}

/* Να μην φαίνεται πια το τεράστιο πορτοκαλί 96x96 κουτί */
.mrtb-board-note.selected{
  outline:none !important;
  background:transparent !important;
  border-radius:0 !important;
}

/* Μικρός selector μόνο γύρω από την κεφαλή της νότας */
.mrtb-board-note.selected .mrtb-note-head{
  outline:3px solid rgba(255,184,46,.85) !important;
  outline-offset:5px !important;
}

/* Για ανοιχτές κεφαλές να κρατάει και το άσπρο εσωτερικό */
.mrtb-board-note.selected .mrtb-note-glyph.open .mrtb-note-head{
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.6) !important;
}

.mrtb-app.mrtb-move-on .mrtb-note-hitbox{
  cursor:grab !important;
}

.mrtb-board-note.dragging .mrtb-note-hitbox{
  cursor:grabbing !important;
}

.mrtb-app.mrtb-delete-on .mrtb-note-hitbox{
  cursor:not-allowed !important;
}

/* Σε κινητό λίγο μεγαλύτερο hitbox για να πιάνεται με δάχτυλο,
   αλλά ο selector μένει μικρός στην κεφαλή. */
@media (max-width:900px){
  .mrtb-note-hitbox{
    left:20px !important;
    top:-12px !important;
    width:64px !important;
    height:120px !important;
  }
}



/* ===== ΠΙΟ ΜΙΚΡΟ click area: ίσα με την κεφαλή της νότας ===== */
/* Το εξωτερικό 96x96 κουτί μένει ΜΟΝΟ για snap/drag/beams, όχι για κλικ. */
.mrtb-board-note{
  pointer-events:none !important;
  cursor:default !important;
}

/* Όλα τα οπτικά μέρη δεν πιάνουν κλικ από μόνα τους. */
.mrtb-note-glyph,
.mrtb-note-head,
.mrtb-stem,
.mrtb-flag,
.mrtb-accidental,
.mrtb-ledgers,
.mrtb-note-caption,
.mrtb-note-value{
  pointer-events:none !important;
}

/* ΜΟΝΟ αυτό είναι το πραγματικό click/drag area.
   Είναι γύρω από την κεφαλή, όχι σε όλο το stem και όχι στα labels. */
.mrtb-note-hitbox{
  position:absolute !important;
  left:29px !important;
  top:30px !important;
  width:46px !important;
  height:34px !important;
  z-index:95 !important;
  border-radius:999px !important;
  background:transparent !important;
  pointer-events:auto !important;
  cursor:pointer !important;

}

.mrtb-app.mrtb-move-on .mrtb-note-hitbox{
  cursor:grab !important;
}

.mrtb-board-note.dragging .mrtb-note-hitbox{
  cursor:grabbing !important;
}

.mrtb-app.mrtb-delete-on .mrtb-note-hitbox{
  cursor:not-allowed !important;
}

/* Ο selector μένει μικρός, μόνο στην κεφαλή. */
.mrtb-board-note.selected{
  outline:none !important;
  background:transparent !important;
  border-radius:0 !important;
}

.mrtb-board-note.selected .mrtb-note-head{
  outline:3px solid rgba(255,184,46,.9) !important;
  outline-offset:4px !important;
}

/* Σε κινητό λίγο μεγαλύτερο αλλά ακόμα μικρό, όχι 96x96. */
@media (max-width:900px){
  .mrtb-note-hitbox{
    left:28px !important;
    top:27px !important;
    width:52px !important;
    height:46px !important;
  }
}


/* =========================================================
   v0.3.7 - Hide/Show ονόματα νοτών + template game σκηνές
   ========================================================= */

/* Τα ονόματα νοτών είναι κρυφά by default, όπως οι αξίες. */
.mrtb-note-caption{
  display:none !important;
}

/* Εμφανίζονται μόνο όταν πατηθεί το κουμπί "Νότες". */
.mrtb-app.mrtb-show-note-names .mrtb-note-caption{
  display:flex !important;
}

/* Στο game αποκαλύπτονται μόνο όταν τελειώσει η απάντηση. */
.mrtb-app.mrtb-game-mode .mrtb-game-note.revealed .mrtb-note-caption{
  display:flex !important;
  animation:mrtb-pop-label .28s ease both;
}

@keyframes mrtb-pop-label{
  from{ transform:scale(.78); opacity:0; }
  to{ transform:scale(1); opacity:1; }
}

/* Χωράει το νέο κουμπί "Νότες" μαζί με τα εργαλεία. */
.mrtb-sidebar{
  grid-template-columns:minmax(840px,1fr) minmax(360px,.45fr) !important;
}

.mrtb-tools-section .mrtb-btn[data-action="toggle-note-labels"]{
  background:linear-gradient(180deg,#e7f4ff,#b8dcff);
}

.mrtb-tools-section .mrtb-btn[data-action="toggle-note-labels"].active{
  background:linear-gradient(180deg,#ffe078,#ffb433);
}

.mrtb-top-actions .mrtb-btn[data-action="template-game"]{
  white-space:nowrap;
}

/* ===== Template / Game scene ===== */

.mrtb-app.mrtb-game-mode .mrtb-board-wrap{
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.9) 0 22px, transparent 24px),
    radial-gradient(circle at 76% 20%, rgba(255,255,255,.85) 0 30px, transparent 32px),
    linear-gradient(90deg,rgba(255,255,255,.28) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(0deg,rgba(255,255,255,.28) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(180deg,#80ddff 0%,#a9ecff 45%,#8dec6d 46%,#48ce56 100%) !important;
}

.mrtb-game-mode .mrtb-staff{
  background:rgba(255,255,255,.72);
  border:3px solid rgba(255,255,255,.9);
  box-shadow:
    0 14px 28px rgba(35,72,92,.16),
    inset 0 0 0 4px rgba(255,255,255,.36);
}

.mrtb-game-split{
  position:absolute;
  left:50%;
  top:28px;
  bottom:28px;
  width:0;
  border-left:6px dashed rgba(38,48,68,.28);
  z-index:6;
  pointer-events:none;
}

.mrtb-team-label{
  position:absolute;
  top:18px;
  z-index:7;
  padding:8px 16px;
  border-radius:999px;
  color:#263044;
  font-size:16px;
  font-weight:1000;
  letter-spacing:.7px;
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.12), 0 8px 18px rgba(35,72,92,.14);
  pointer-events:none;
}

.mrtb-team-label.a{
  left:24px;
  background:linear-gradient(180deg,#b8e4ff,#5eb4ff);
}

.mrtb-team-label.b{
  right:24px;
  background:linear-gradient(180deg,#ffd0e0,#ff79a7);
}

.mrtb-game-note{
  z-index:44 !important;
  animation:mrtb-game-note-in .3s cubic-bezier(.2,1.4,.35,1) both;
}

@keyframes mrtb-game-note-in{
  from{ transform:scale(.4) rotate(-12deg); opacity:0; }
  to{ transform:scale(1) rotate(0deg); opacity:1; }
}

.mrtb-game-note.correct .mrtb-note-head{
  outline:5px solid rgba(50,201,114,.85) !important;
  outline-offset:6px !important;
}

.mrtb-game-note.wrong .mrtb-note-head{
  outline:5px solid rgba(255,88,88,.9) !important;
  outline-offset:6px !important;
}

.mrtb-game-hud{
  position:absolute;
  left:22px;
  right:22px;
  top:392px;
  z-index:80;
  padding:10px;
  border-radius:24px;
  background:rgba(255,255,255,.9);
  border:3px solid rgba(255,255,255,.92);
  box-shadow:0 16px 34px rgba(35,72,92,.18);
  backdrop-filter:blur(8px);
}

.mrtb-game-score{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
  font-weight:1000;
}

.mrtb-game-score strong{
  font-size:17px;
}

.mrtb-game-score span{
  padding:5px 12px;
  border-radius:999px;
  background:linear-gradient(180deg,#fff1a7,#ffc24b);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.1);
}

.mrtb-game-close{
  border:0;
  width:30px;
  height:30px;
  border-radius:999px;
  background:linear-gradient(180deg,#ffc1c1,#ff6f6f);
  color:#571313;
  font-size:20px;
  font-weight:1000;
  cursor:pointer;
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.12);
}

.mrtb-game-teams{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.mrtb-game-card{
  border-radius:20px;
  padding:10px;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(242,247,255,.94));
  border:2px solid rgba(38,48,68,.08);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.06);
}

.mrtb-game-card.team-a{
  border-color:rgba(70,151,255,.28);
}

.mrtb-game-card.team-b{
  border-color:rgba(255,107,154,.28);
}

.mrtb-game-team-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:5px;
  font-size:16px;
  font-weight:1000;
}

.mrtb-game-team-title b{
  min-width:34px;
  text-align:center;
  padding:3px 9px;
  border-radius:999px;
  background:linear-gradient(180deg,#ffe078,#ffb433);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.1);
}

.mrtb-game-question{
  margin-bottom:7px;
  font-size:12px;
  font-weight:900;
  color:#44526b;
}

.mrtb-game-choices{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
}

.mrtb-game-choice{
  min-height:36px;
  border:0;
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#eaf1fb);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.1), 0 5px 10px rgba(35,72,92,.1);
  color:#263044;
  font:inherit;
  font-size:14px;
  font-weight:1000;
  cursor:pointer;
}

.mrtb-game-choice:hover{
  transform:translateY(-1px);
}

.mrtb-game-choice.chosen{
  background:linear-gradient(180deg,#fff1a7,#ffc24b);
}

.mrtb-game-choice:disabled{
  cursor:default;
  opacity:.78;
}

.mrtb-game-feedback{
  min-height:22px;
  margin-top:7px;
  font-size:12px;
  font-weight:1000;
  color:#68758d;
}

.mrtb-game-feedback.ok{
  color:#118546;
}

.mrtb-game-feedback.bad{
  color:#c33333;
}

/* ===== RESULT POPUP ΠΑΝΤΑ ΜΠΡΟΣΤΑ ===== */

.mrtb-game-result{
  position:absolute !important;
  inset:0 !important;
  z-index:99999 !important;
  display:grid !important;
  place-items:center !important;
  padding:24px !important;
  background:rgba(45,120,180,.22) !important;
  backdrop-filter:blur(6px) !important;
  pointer-events:auto !important;
}

.mrtb-game-result-card{
  position:relative !important;
  z-index:100000 !important;
  max-height:calc(100% - 48px) !important;
  overflow:auto !important;
}

/* Το HUD/κουμπιά απαντήσεων να μένουν πίσω από το αποτέλεσμα */
.mrtb-game-hud{
  z-index:80 !important;
}

.mrtb-game-note,
.mrtb-note-beam,
.mrtb-chord-stem-link{
  z-index:40 !important;
}


@keyframes mrtb-result-pop{
  from{ transform:translateY(20px) scale(.8); opacity:0; }
  to{ transform:translateY(0) scale(1); opacity:1; }
}

.mrtb-game-trophy{
  font-size:58px;
  line-height:1;
  margin-bottom:6px;
  animation:mrtb-trophy-bounce .9s ease infinite alternate;
}

@keyframes mrtb-trophy-bounce{
  from{ transform:translateY(0) rotate(-4deg); }
  to{ transform:translateY(-8px) rotate(4deg); }
}

.mrtb-game-result-card h2{
  margin:4px 0 12px;
  font-size:28px;
}

.mrtb-game-result-card p{
  margin:6px 0;
  font-size:16px;
  font-weight:900;
}

.mrtb-game-result-card .mrtb-btn{
  margin:10px 4px 0;
}

.mrtb-game-fx{
  position:absolute;
  inset:0;
  z-index:100;
  pointer-events:none;
  overflow:hidden;
}

.mrtb-game-fx i{
  position:absolute;
  left:var(--x);
  top:-24px;
  font-style:normal;
  font-size:24px;
  font-weight:1000;
  color:#ffb433;
  text-shadow:0 2px 0 rgba(0,0,0,.1);
  animation:mrtb-confetti-fall var(--d) ease-in forwards;
  transform:rotate(var(--r));
}

.mrtb-game-fx i:nth-child(3n){
  color:#4697ff;
}

.mrtb-game-fx i:nth-child(4n){
  color:#ff6b9a;
}

.mrtb-game-fx i:nth-child(5n){
  color:#32c972;
}

@keyframes mrtb-confetti-fall{
  to{
    top:110%;
    transform:rotate(calc(var(--r) + 260deg));
    opacity:.15;
  }
}

@media (max-width:1200px){
  .mrtb-sidebar{
    grid-template-columns:1fr 1fr !important;
    max-height:132px !important;
  }

  .mrtb-tools-section .mrtb-tool-row{
    flex-wrap:wrap !important;
  }
}

@media (max-width:900px){
  .mrtb-game-hud{
    left:10px;
    right:10px;
    top:340px;
    padding:8px;
    border-radius:18px;
  }

  .mrtb-game-teams{
    grid-template-columns:1fr;
    gap:7px;
  }

  .mrtb-game-choices{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:4px;
  }

  .mrtb-game-choice{
    min-height:32px;
    font-size:12px;
    border-radius:12px;
  }

  .mrtb-team-label{
    top:12px;
    padding:6px 10px;
    font-size:12px;
  }

  .mrtb-game-split{
    top:20px;
    bottom:20px;
    border-left-width:4px;
  }

  .mrtb-game-result-card{
    padding:18px;
  }

  .mrtb-game-result-card h2{
    font-size:22px;
  }
}


/* ===== manual level menu + answer emoji v0.3.9 ===== */
.mrtb-game-level-menu{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:8px;
}

.mrtb-game-level-menu[hidden],
.mrtb-game-progress[hidden],
.mrtb-game-teams[hidden]{
  display:none !important;
}

.mrtb-game-level-menu button{
  border:0;
  min-height:86px;
  border-radius:20px;
  padding:10px;
  background:linear-gradient(180deg,#fff7b8,#ffbe45);
  box-shadow:inset 0 -5px 0 rgba(0,0,0,.12), 0 9px 16px rgba(35,72,92,.14);
  color:#263044;
  font:inherit;
  cursor:pointer;
  display:grid;
  gap:2px;
  text-align:center;
}

.mrtb-game-level-menu button:hover{
  transform:translateY(-2px) scale(1.02);
}

.mrtb-game-level-menu button b{
  font-size:24px;
  font-weight:1000;
}

.mrtb-game-level-menu button span{
  font-size:15px;
  font-weight:1000;
}

.mrtb-game-level-menu button small{
  font-size:11px;
  font-weight:900;
  color:#536178;
}

.mrtb-game-progress b{
  cursor:pointer;
}

.mrtb-game-card{
  position:relative;
  overflow:visible;
}

.mrtb-answer-emoji{
  position:absolute;
  left:50%;
  top:-36px;
  transform:translateX(-50%) scale(.7);
  min-width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  box-shadow:0 10px 18px rgba(35,72,92,.16), inset 0 -3px 0 rgba(0,0,0,.08);
  font-size:28px;
  opacity:0;
  pointer-events:none;
  z-index:5;
}

.mrtb-answer-emoji.ok{
  opacity:1;
  background:linear-gradient(180deg,#dbffbd,#62df7b);
}

.mrtb-answer-emoji.bad{
  opacity:1;
  background:linear-gradient(180deg,#ffe1e1,#ff8a8a);
}

.mrtb-answer-emoji.pop{
  animation:mrtb-answer-emoji-pop .62s cubic-bezier(.2,1.65,.35,1) both;
}

@keyframes mrtb-answer-emoji-pop{
  0%{ transform:translateX(-50%) translateY(12px) scale(.2) rotate(-12deg); opacity:0; }
  55%{ transform:translateX(-50%) translateY(-8px) scale(1.25) rotate(8deg); opacity:1; }
  100%{ transform:translateX(-50%) translateY(0) scale(1) rotate(0deg); opacity:1; }
}

@media (max-width:900px){
  .mrtb-game-level-menu{
    grid-template-columns:1fr;
    gap:7px;
  }

  .mrtb-game-level-menu button{
    min-height:58px;
    grid-template-columns:auto 1fr;
    align-items:center;
    text-align:left;
  }

  .mrtb-game-level-menu button small{
    grid-column:1 / -1;
  }

  .mrtb-answer-emoji{
    top:-30px;
    width:38px;
    height:38px;
    min-width:38px;
    font-size:23px;
  }
}


/* ===== v0.4.0 - Template 2 Αξίες: κάθετη σκηνή χωρίς πιανάκι ===== */
.mrtb-app[data-scene="values"] .mrtb-mini-piano,
.mrtb-app[data-scene="values"] .mrtb-staff{
  display:none !important;
}

.mrtb-app[data-scene="values"] .mrtb-board-wrap{
  background:
    radial-gradient(circle at 12% 14%, rgba(255,255,255,.9) 0 36px, transparent 38px),
    radial-gradient(circle at 85% 10%, rgba(255,255,255,.74) 0 48px, transparent 50px),
    linear-gradient(180deg, rgba(130,220,255,.92), rgba(196,247,134,.9));
}

.mrtb-values-scene{
  position:absolute;
  left:22px;
  right:22px;
  top:18px;
  z-index:12;
  min-height:880px;
  padding:18px 18px 32px;
  border-radius:28px;
  background:rgba(255,255,255,.68);
  border:2px solid rgba(255,255,255,.9);
  box-shadow:0 14px 30px rgba(35,72,92,.13), inset 0 0 0 3px rgba(255,255,255,.28);
}

.mrtb-values-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:12px 14px;
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,247,211,.9));
  box-shadow:0 10px 18px rgba(35,72,92,.1), inset 0 -4px 0 rgba(0,0,0,.07);
}

.mrtb-values-hero strong{
  display:block;
  font-size:22px;
  font-weight:1000;
}

.mrtb-values-hero span{
  display:block;
  margin-top:3px;
  font-size:13px;
  font-weight:900;
  color:#526079;
}

.mrtb-values-picker{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
}

.mrtb-values-picker button{
  border:0;
  border-radius:999px;
  padding:8px 12px;
  font:inherit;
  font-size:12px;
  font-weight:950;
  cursor:pointer;
  color:#263044;
  background:rgba(255,255,255,.95);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.1), 0 6px 12px rgba(35,72,92,.1);
}

.mrtb-values-picker button.active{
  background:linear-gradient(180deg,#ffe078,#ffb433);
}

.mrtb-values-ladder{
  display:grid;
  gap:22px;
  margin-top:18px;
}

.mrtb-value-relation{
  position:relative;
  display:grid;
  grid-template-columns:minmax(180px,.8fr) minmax(150px,.55fr) minmax(260px,1fr) minmax(160px,.65fr);
  align-items:center;
  gap:16px;
  min-height:188px;
  padding:14px;
  border-radius:26px;
  background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(239,248,255,.84));
  box-shadow:0 10px 20px rgba(35,72,92,.11), inset 0 -4px 0 rgba(0,0,0,.05);
  animation:mrtb-values-in .28s ease both;
  animation-delay:calc(var(--i, 0) * .04s);
}

@keyframes mrtb-values-in{
  from{ transform:translateY(12px); opacity:0; }
  to{ transform:translateY(0); opacity:1; }
}

.mrtb-value-scene-card{
  position:relative;
  display:grid;
  place-items:center;
  text-align:center;
  min-height:138px;
  border-radius:24px;
  background:linear-gradient(180deg,#fff,#eef6ff);
  border:2px solid rgba(38,48,68,.08);
  box-shadow:inset 0 -7px 0 rgba(0,0,0,.09), 0 10px 16px rgba(35,72,92,.1);
}

.mrtb-value-scene-card.main{
  min-height:156px;
  background:linear-gradient(180deg,#fff9d9,#ffe58b);
}

.mrtb-value-scene-card.mini{
  min-height:132px;
}

.mrtb-value-scene-card b{
  margin-top:72px;
  font-size:17px;
  line-height:1;
  font-weight:1000;
}

.mrtb-value-scene-card small{
  font-size:12px;
  font-weight:950;
  color:#59677f;
}

.mrtb-values-scene .mrtb-value-icon{
  position:absolute !important;
  top:24px !important;
  left:50% !important;
  transform:translateX(-50%) scale(2.35) !important;
  transform-origin:center center !important;
  width:30px !important;
  height:30px !important;
  flex:0 0 30px !important;
  pointer-events:none !important;
}

.mrtb-value-scene-card.main .mrtb-value-icon{
  transform:translateX(-50%) scale(2.85) !important;
  top:28px !important;
}

.mrtb-value-down-arrows{
  display:grid;
  grid-template-columns:1fr;
  place-items:center;
  gap:3px;
  color:#263044;
  font-weight:1000;
}

.mrtb-value-down-arrows span{
  display:block;
  font-size:42px;
  line-height:.75;
  color:#ff8c2b;
  filter:drop-shadow(0 3px 0 rgba(255,255,255,.9));
}

.mrtb-value-down-arrows strong{
  display:block;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.08);
  font-size:13px;
  white-space:nowrap;
}

.mrtb-value-pair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.mrtb-value-relation-caption{
  justify-self:stretch;
  padding:12px 14px;
  border-radius:20px;
  background:rgba(255,255,255,.86);
  border:2px dashed rgba(38,48,68,.15);
  font-size:15px;
  font-weight:1000;
  text-align:center;
}

@media (max-width:1100px){
  .mrtb-value-relation{
    grid-template-columns:1fr;
    gap:10px;
  }

  .mrtb-value-down-arrows{
    grid-template-columns:auto auto auto;
  }

  .mrtb-value-down-arrows span{
    font-size:34px;
  }

  .mrtb-value-relation-caption{
    font-size:13px;
  }
}

@media (max-width:900px){
  .mrtb-values-scene{
    left:10px;
    right:10px;
    top:10px;
    padding:10px 10px 24px;
    border-radius:20px;
  }

  .mrtb-values-hero{
    display:grid;
    gap:10px;
    border-radius:18px;
  }

  .mrtb-values-hero strong{
    font-size:18px;
  }

  .mrtb-values-picker{
    justify-content:flex-start;
  }

  .mrtb-values-picker button{
    padding:7px 9px;
    font-size:11px;
  }

  .mrtb-value-pair{
    gap:8px;
  }

  .mrtb-value-scene-card{
    min-height:120px;
    border-radius:18px;
  }

  .mrtb-value-scene-card.main{
    min-height:132px;
  }

  .mrtb-value-scene-card b{
    margin-top:65px;
    font-size:14px;
  }

  .mrtb-values-scene .mrtb-value-icon{
    transform:translateX(-50%) scale(2.05) !important;
  }

  .mrtb-value-scene-card.main .mrtb-value-icon{
    transform:translateX(-50%) scale(2.35) !important;
  }
}


/* ===== Template 2 · Αξίες ως εξίσωση δύο αξιών v0.4.1 ===== */
.mrtb-values-equation-scene{
  min-height:850px;
}

.mrtb-values-equation-actions{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
}

.mrtb-value-equation-builder{
  display:grid;
  grid-template-columns:minmax(220px,.9fr) minmax(260px,1.05fr) minmax(220px,.9fr);
  gap:14px;
  margin-top:14px;
  align-items:stretch;
}

.mrtb-value-picker-block,
.mrtb-value-question-box{
  border-radius:22px;
  padding:12px;
  background:rgba(255,255,255,.9);
  box-shadow:0 9px 18px rgba(35,72,92,.1), inset 0 -3px 0 rgba(0,0,0,.06);
}

.mrtb-value-picker-block b,
.mrtb-value-question-box span{
  display:block;
  margin-bottom:8px;
  font-size:12px;
  font-weight:1000;
  color:#526079;
  text-transform:uppercase;
  letter-spacing:.5px;
}

.mrtb-value-question-box{
  display:grid;
  place-items:center;
  text-align:center;
  background:linear-gradient(180deg,#fff8d7,#ffe389);
}

.mrtb-value-question-box strong{
  display:block;
  font-size:22px;
  line-height:1.1;
  font-weight:1000;
  color:#243044;
}

.mrtb-value-question-box em{
  display:inline-block;
  margin-top:8px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.88);
  font-style:normal;
  font-size:13px;
  font-weight:950;
  color:#44526b;
}

.mrtb-value-equation-stage{
  position:relative;
  display:grid;
  gap:10px;
  margin-top:16px;
  padding:18px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(239,248,255,.72));
  border:2px dashed rgba(38,48,68,.14);
  overflow:hidden;
}

.mrtb-value-eq-tier{
  position:relative;
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:12px;
  border-radius:24px;
  background:rgba(255,255,255,.88);
  box-shadow:0 10px 18px rgba(35,72,92,.09), inset 0 -4px 0 rgba(0,0,0,.05);
  animation:mrtb-values-in .24s ease both;
  animation-delay:calc(var(--tier, 0) * .06s);
}

.mrtb-value-eq-tier.top{
  background:linear-gradient(180deg,#fff9d9,#ffe58b);
}

.mrtb-value-eq-tier.final{
  background:linear-gradient(180deg,#e9fff1,#c9ffda);
}

.mrtb-value-eq-tier.ghost{
  opacity:.38;
  filter:saturate(.55);
}

.mrtb-values-equation-scene.solved .mrtb-value-eq-tier.ghost{
  opacity:1;
  filter:none;
}

.mrtb-value-tier-title strong{
  display:block;
  font-size:13px;
  font-weight:1000;
  color:#526079;
}

.mrtb-value-tier-title span{
  display:block;
  margin-top:5px;
  font-size:19px;
  line-height:1.05;
  font-weight:1000;
  color:#243044;
}

.mrtb-value-tier-cards{
  display:grid;
  grid-template-columns:repeat(var(--cards,4), minmax(74px,1fr));
  gap:9px;
  align-items:center;
}

.mrtb-value-eq-card{
  position:relative;
  min-height:104px;
  border-radius:20px;
  display:grid;
  place-items:center;
  text-align:center;
  background:linear-gradient(180deg,#fff,#eef6ff);
  box-shadow:inset 0 -5px 0 rgba(0,0,0,.08), 0 7px 13px rgba(35,72,92,.09);
  border:2px solid rgba(38,48,68,.08);
}

.mrtb-value-eq-card.top{
  background:linear-gradient(180deg,#fff8d7,#ffe389);
}

.mrtb-value-eq-card.final{
  background:linear-gradient(180deg,#f3fff6,#c9ffda);
}

.mrtb-value-eq-card.ghost{
  background:rgba(255,255,255,.72);
}

.mrtb-value-eq-card b{
  margin-top:58px;
  font-size:14px;
  line-height:1;
  font-weight:1000;
}

.mrtb-value-eq-card small{
  font-size:11px;
  font-weight:950;
  color:#59677f;
}

.mrtb-value-eq-card .mrtb-value-icon{
  position:absolute !important;
  top:20px !important;
  left:50% !important;
  transform:translateX(-50%) scale(1.75) !important;
  transform-origin:center center !important;
  pointer-events:none !important;
}

.mrtb-value-eq-more{
  min-height:104px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(255,255,255,.76);
  font-size:22px;
  font-weight:1000;
  color:#44526b;
}

.mrtb-value-eq-arrows{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:12px;
  min-height:54px;
  color:#ff8c2b;
  font-weight:1000;
  opacity:.35;
  transition:.18s ease;
}

.mrtb-value-eq-arrows.solved{
  opacity:1;
}

.mrtb-value-eq-arrows span{
  display:block;
  text-align:center;
  font-size:46px;
  line-height:.7;
  filter:drop-shadow(0 3px 0 rgba(255,255,255,.9));
}

.mrtb-value-eq-arrows strong{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.95);
  color:#243044;
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.08);
  font-size:13px;
  white-space:nowrap;
}

.mrtb-values-equation-scene.unsolved .mrtb-value-eq-arrows strong{
  color:#8791a4;
}

@media (max-width:1100px){
  .mrtb-value-equation-builder{
    grid-template-columns:1fr;
  }

  .mrtb-value-eq-tier{
    grid-template-columns:1fr;
  }

  .mrtb-value-tier-cards{
    grid-template-columns:repeat(auto-fit,minmax(70px,1fr));
  }

  .mrtb-value-eq-arrows{
    grid-template-columns:auto auto auto;
    justify-content:center;
  }
}

@media (max-width:900px){
  .mrtb-value-question-box strong{
    font-size:18px;
  }

  .mrtb-value-equation-stage{
    padding:10px;
    border-radius:20px;
  }

  .mrtb-value-eq-card{
    min-height:94px;
  }

  .mrtb-value-eq-card .mrtb-value-icon{
    transform:translateX(-50%) scale(1.45) !important;
  }

  .mrtb-value-eq-arrows span{
    font-size:34px;
  }

  .mrtb-value-eq-arrows strong{
    font-size:11px;
    white-space:normal;
    text-align:center;
  }
}

/* ===== Template 2 · Αξίες compact step-by-step v0.4.2 ===== */
.mrtb-values-equation-scene.compact{
  min-height:640px !important;
  padding:14px !important;
  overflow:visible !important;
}

.mrtb-values-hero.compact{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:10px 12px !important;
  border-radius:22px !important;
}

.mrtb-values-hero.compact strong{
  font-size:24px !important;
  line-height:1 !important;
}

.mrtb-values-hero.compact span{
  font-size:13px !important;
  line-height:1.15 !important;
}

.mrtb-value-equation-builder.compact{
  grid-template-columns:minmax(190px,.75fr) minmax(260px,1fr) minmax(190px,.75fr) !important;
  gap:9px !important;
  margin-top:10px !important;
}

.mrtb-value-picker-block,
.mrtb-value-question-box.compact{
  padding:9px !important;
  border-radius:18px !important;
}

.mrtb-values-picker.compact{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:5px !important;
}

.mrtb-values-picker.compact button{
  min-height:28px !important;
  padding:4px 8px !important;
  border-radius:10px !important;
  font-size:11px !important;
}

.mrtb-value-question-box.compact strong{
  font-size:19px !important;
  line-height:1.05 !important;
}

.mrtb-value-question-box.compact em{
  margin-top:6px !important;
  padding:5px 9px !important;
  font-size:12px !important;
}

.mrtb-value-equation-stage.compact{
  margin-top:10px !important;
  padding:12px !important;
  gap:8px !important;
  border-radius:22px !important;
  display:grid !important;
}

.mrtb-value-path-row{
  display:grid !important;
  grid-template-columns:repeat(var(--items,4), minmax(92px,1fr)) !important;
  gap:8px !important;
  align-items:start !important;
}

.mrtb-value-path-item{
  position:relative !important;
  display:grid !important;
  gap:5px !important;
  align-items:start !important;
}

.mrtb-value-path-card{
  position:relative !important;
  min-height:116px !important;
  border-radius:20px !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  background:linear-gradient(180deg,#fff,#eef6ff) !important;
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.08), 0 7px 13px rgba(35,72,92,.09) !important;
  border:2px solid rgba(38,48,68,.08) !important;
  overflow:hidden !important;
}

.mrtb-value-path-item.start .mrtb-value-path-card{
  background:linear-gradient(180deg,#fff8d7,#ffe389) !important;
}

.mrtb-value-path-item.target .mrtb-value-path-card{
  background:linear-gradient(180deg,#e9fff1,#c9ffda) !important;
  outline:3px solid rgba(50,201,114,.25) !important;
}

.mrtb-value-path-card.ghost{
  opacity:.34 !important;
  filter:saturate(.45) !important;
}

.mrtb-value-path-card b{
  margin-top:56px !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:1000 !important;
}

.mrtb-value-path-card small{
  font-size:11px !important;
  font-weight:950 !important;
  color:#59677f !important;
}

.mrtb-value-path-card .mrtb-value-icon{
  position:absolute !important;
  top:18px !important;
  left:50% !important;
  transform:translateX(-50%) scale(1.55) !important;
  transform-origin:center center !important;
}

.mrtb-value-path-target{
  justify-self:center !important;
  padding:3px 8px !important;
  border-radius:999px !important;
  background:rgba(50,201,114,.14) !important;
  color:#276b3d !important;
  font-size:10px !important;
  font-weight:1000 !important;
}

.mrtb-value-step-buttons{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  justify-content:center !important;
  margin-top:2px !important;
}

.mrtb-value-step-buttons button{
  min-height:38px !important;
  border:0 !important;
  border-radius:13px !important;
  padding:5px 10px !important;
  background:rgba(255,255,255,.9) !important;
  color:#263044 !important;
  font-weight:1000 !important;
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.09), 0 5px 10px rgba(47,72,94,.1) !important;
  cursor:pointer !important;
}

.mrtb-value-step-buttons button.active{
  background:linear-gradient(180deg,#ffe078,#ffb433) !important;
}

.mrtb-value-step-buttons button small{
  display:block !important;
  font-size:9px !important;
  line-height:1 !important;
  opacity:.78 !important;
}

.mrtb-value-steps-panel{
  display:grid !important;
  gap:8px !important;
  min-height:58px !important;
}

.mrtb-value-empty-solution{
  padding:14px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.72) !important;
  text-align:center !important;
  font-size:13px !important;
  font-weight:850 !important;
  color:#526079 !important;
}

.mrtb-value-open-step{
  display:grid !important;
  grid-template-columns:minmax(120px,.75fr) minmax(160px,.7fr) minmax(120px,.75fr) !important;
  align-items:center !important;
  gap:8px !important;
  padding:8px !important;
  border-radius:20px !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:0 7px 14px rgba(35,72,92,.08) !important;
  animation:mrtb-values-in .22s ease both !important;
  animation-delay:calc(var(--step, 0) * .04s) !important;
}

.mrtb-value-open-card{
  position:relative !important;
  min-height:78px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,#fff,#eef6ff) !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.07) !important;
}

.mrtb-value-open-card.top{
  background:linear-gradient(180deg,#fff8d7,#ffe389) !important;
}

.mrtb-value-open-card.bottom{
  background:linear-gradient(180deg,#f3fff6,#c9ffda) !important;
}

.mrtb-value-open-card .mrtb-value-icon{
  position:absolute !important;
  top:11px !important;
  left:50% !important;
  transform:translateX(-50%) scale(1.08) !important;
}

.mrtb-value-open-card b{
  margin-top:38px !important;
  font-size:13px !important;
  line-height:1.05 !important;
  font-weight:1000 !important;
}

.mrtb-value-open-arrows{
  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;
  align-items:center !important;
  gap:6px !important;
  color:#ff8c2b !important;
  text-align:center !important;
  font-weight:1000 !important;
}

.mrtb-value-open-arrows span{
  font-size:36px !important;
  line-height:.7 !important;
  filter:drop-shadow(0 2px 0 rgba(255,255,255,.9)) !important;
}

.mrtb-value-open-arrows strong{
  padding:7px 9px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.95) !important;
  color:#243044 !important;
  font-size:12px !important;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.08) !important;
  white-space:nowrap !important;
}

@media (max-width:1100px){
  .mrtb-value-equation-builder.compact{
    grid-template-columns:1fr !important;
  }

  .mrtb-value-path-row{
    grid-template-columns:repeat(auto-fit,minmax(92px,1fr)) !important;
  }
}

@media (max-width:900px){
  .mrtb-values-equation-scene.compact{
    min-height:640px !important;
    padding:8px !important;
  }

  .mrtb-values-hero.compact{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .mrtb-values-hero.compact strong{
    font-size:20px !important;
  }

  .mrtb-values-hero.compact span{
    font-size:11px !important;
  }

  .mrtb-value-question-box.compact strong{
    font-size:16px !important;
  }

  .mrtb-value-equation-stage.compact{
    padding:8px !important;
  }

  .mrtb-value-path-row{
    gap:6px !important;
  }

  .mrtb-value-path-card{
    min-height:98px !important;
  }

  .mrtb-value-path-card .mrtb-value-icon{
    transform:translateX(-50%) scale(1.25) !important;
    top:16px !important;
  }

  .mrtb-value-path-card b{
    margin-top:48px !important;
    font-size:11px !important;
  }

  .mrtb-value-open-step{
    grid-template-columns:1fr !important;
    gap:4px !important;
  }

  .mrtb-value-open-arrows span{
    font-size:30px !important;
  }

  .mrtb-value-open-arrows strong{
    white-space:normal !important;
    font-size:11px !important;
  }
}


/* ===== v0.4.3 Template 2 · Αξίες vertical path + tree/pyramid λύση ===== */
.mrtb-values-equation-scene.compact{
  min-height:640px !important;
  padding:12px !important;
}

.mrtb-value-equation-builder.compact{
  grid-template-columns:minmax(180px,.7fr) minmax(280px,1fr) minmax(180px,.7fr) !important;
}

.mrtb-value-equation-stage.compact{
  display:grid !important;
  grid-template-columns:minmax(230px,.38fr) minmax(0,1fr) !important;
  grid-template-areas:
    "path buttons"
    "path solution" !important;
  align-items:start !important;
  gap:12px !important;
  padding:12px !important;
  overflow:visible !important;
}

/* Πριν τη λύση: μία κάθετη στήλη αξιών, όχι οριζόντια σειρά */
.mrtb-value-path-row{
  grid-area:path !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  gap:0 !important;
  min-width:220px !important;
  max-width:290px !important;
  margin:0 auto !important;
}

.mrtb-value-path-item{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:4px !important;
}

.mrtb-value-path-card{
  width:100% !important;
  min-height:86px !important;
  border-radius:18px !important;
}

.mrtb-value-path-card .mrtb-value-icon{
  top:12px !important;
  transform:translateX(-50%) scale(1.12) !important;
}

.mrtb-value-path-card b{
  margin-top:42px !important;
  font-size:13px !important;
}

.mrtb-value-path-card small{
  font-size:10px !important;
}

.mrtb-value-path-card.ghost{
  opacity:.28 !important;
  filter:saturate(.35) grayscale(.2) !important;
}

.mrtb-value-path-down{
  margin:1px 0 2px !important;
  font-size:22px !important;
  line-height:.9 !important;
  font-weight:1000 !important;
  color:#ff8c2b !important;
  filter:drop-shadow(0 2px 0 rgba(255,255,255,.92)) !important;
}

.mrtb-value-path-target{
  margin-top:3px !important;
}

.mrtb-value-step-buttons.tree-buttons{
  grid-area:buttons !important;
  justify-content:center !important;
  align-self:start !important;
  margin:0 !important;
}

.mrtb-value-steps-panel{
  grid-area:solution !important;
  min-height:300px !important;
  align-self:stretch !important;
}

/* Δέντρο / πυραμίδα ανάλυσης */
.mrtb-value-tree-wrap{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:7px !important;
  width:100% !important;
  padding:8px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.7) !important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.42) !important;
  animation:mrtb-values-in .22s ease both !important;
}

.mrtb-value-tree-level{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:nowrap !important;
}

.mrtb-value-tree-level.root{
  max-width:270px !important;
}

.mrtb-value-tree-level.middle{
  max-width:720px !important;
}

.mrtb-value-tree-level.target{
  max-width:920px !important;
}

.mrtb-value-tree-node,
.mrtb-value-tree-more{
  position:relative !important;
  min-width:0 !important;
  flex:1 1 0 !important;
  max-width:150px !important;
  min-height:82px !important;
  border-radius:17px !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  padding:8px 6px 6px !important;
  background:linear-gradient(180deg,#fff,#eef6ff) !important;
  border:2px solid rgba(38,48,68,.08) !important;
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.08), 0 7px 13px rgba(35,72,92,.08) !important;
}

.mrtb-value-tree-node.root{
  background:linear-gradient(180deg,#fff8d7,#ffe389) !important;
}

.mrtb-value-tree-node.target{
  background:linear-gradient(180deg,#e9fff1,#c9ffda) !important;
  outline:2px solid rgba(50,201,114,.22) !important;
}

.mrtb-value-tree-node .mrtb-value-icon{
  position:absolute !important;
  top:11px !important;
  left:50% !important;
  transform:translateX(-50%) scale(1.05) !important;
}

.mrtb-value-tree-node b{
  margin-top:39px !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:1000 !important;
}

.mrtb-value-tree-node small{
  font-size:9px !important;
  font-weight:950 !important;
  color:#59677f !important;
}

.mrtb-value-tree-more{
  flex:0 0 76px !important;
  max-width:76px !important;
  font-size:18px !important;
  font-weight:1000 !important;
  color:#44526b !important;
  background:rgba(255,255,255,.82) !important;
}

.mrtb-value-tree-more small{
  display:block !important;
  font-size:9px !important;
}

.mrtb-value-tree-split{
  position:relative !important;
  min-height:28px !important;
  display:grid !important;
  place-items:center !important;
  color:#ff8c2b !important;
  font-weight:1000 !important;
}

.mrtb-value-tree-split::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:0 !important;
  width:2px !important;
  height:14px !important;
  transform:translateX(-50%) !important;
  background:#ff8c2b !important;
  border-radius:4px !important;
}

.mrtb-value-tree-split span{
  position:absolute !important;
  left:50% !important;
  top:12px !important;
  width:min(66%,560px) !important;
  height:16px !important;
  transform:translateX(-50%) !important;
  border-left:3px solid #ff8c2b !important;
  border-right:3px solid #ff8c2b !important;
  border-top:3px solid #ff8c2b !important;
  border-radius:18px 18px 0 0 !important;
  opacity:.85 !important;
}

.mrtb-value-tree-split b{
  position:relative !important;
  z-index:2 !important;
  margin-top:0 !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.96) !important;
  color:#243044 !important;
  font-size:11px !important;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.08) !important;
}

.mrtb-value-tree-summary{
  width:min(720px,100%) !important;
  margin-top:3px !important;
  padding:9px 12px !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#fff,#eef6ff) !important;
  border:2px dashed rgba(38,48,68,.13) !important;
  text-align:center !important;
  font-size:14px !important;
  font-weight:900 !important;
  color:#243044 !important;
}

.mrtb-value-tree-summary strong{
  display:inline-block !important;
  margin-left:8px !important;
  padding:4px 9px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#dbffbd,#62df7b) !important;
}

.mrtb-value-tree-summary.solved{
  border-style:solid !important;
  border-color:rgba(50,201,114,.35) !important;
}

@media (max-width:1100px){
  .mrtb-value-equation-stage.compact{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "path"
      "buttons"
      "solution" !important;
  }

  .mrtb-value-path-row{
    max-width:360px !important;
  }

  .mrtb-value-tree-level{
    gap:5px !important;
  }

  .mrtb-value-tree-node{
    max-width:120px !important;
    min-height:76px !important;
  }
}

@media (max-width:900px){
  .mrtb-value-equation-builder.compact{
    grid-template-columns:1fr !important;
  }

  .mrtb-values-equation-scene.compact{
    padding:7px !important;
  }

  .mrtb-value-path-row{
    max-width:280px !important;
  }

  .mrtb-value-path-card{
    min-height:74px !important;
  }

  .mrtb-value-path-card .mrtb-value-icon{
    top:9px !important;
    transform:translateX(-50%) scale(.92) !important;
  }

  .mrtb-value-path-card b{
    margin-top:34px !important;
    font-size:11px !important;
  }

  .mrtb-value-tree-wrap{
    padding:5px !important;
    gap:5px !important;
  }

  .mrtb-value-tree-level{
    gap:3px !important;
  }

  .mrtb-value-tree-node{
    min-height:66px !important;
    border-radius:13px !important;
    padding:5px 3px !important;
  }

  .mrtb-value-tree-node .mrtb-value-icon{
    top:8px !important;
    transform:translateX(-50%) scale(.8) !important;
  }

  .mrtb-value-tree-node b{
    margin-top:29px !important;
    font-size:9.5px !important;
  }

  .mrtb-value-tree-node small{
    font-size:8px !important;
  }

  .mrtb-value-tree-more{
    flex-basis:46px !important;
    max-width:46px !important;
    min-height:62px !important;
    font-size:14px !important;
  }

  .mrtb-value-tree-split b{
    font-size:9px !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .mrtb-value-tree-summary{
    font-size:11px !important;
    padding:7px !important;
  }
}


/* =========================================================
   v0.4.4 - Game Template 2 · Αξίες δύο ομάδες
   ========================================================= */

.mrtb-app.mrtb-values-game-mode .mrtb-board-wrap{
  background:
    radial-gradient(circle at 16% 18%, rgba(255,255,255,.95) 0 24px, transparent 26px),
    radial-gradient(circle at 78% 20%, rgba(255,255,255,.9) 0 32px, transparent 34px),
    linear-gradient(90deg,rgba(255,255,255,.3) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(0deg,rgba(255,255,255,.3) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(180deg,#88e1ff 0%,#c5f7ff 46%,#9cff88 47%,#4ed766 100%) !important;
}

.mrtb-value-game-stage{
  position:absolute;
  left:22px;
  right:22px;
  top:18px;
  min-height:350px;
  z-index:35;
  padding:14px;
  border-radius:28px;
  background:rgba(255,255,255,.72);
  border:3px solid rgba(255,255,255,.9);
  box-shadow:0 14px 28px rgba(35,72,92,.16), inset 0 0 0 4px rgba(255,255,255,.36);
  overflow:hidden;
}

.mrtb-value-game-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  border-radius:20px;
  background:rgba(255,255,255,.82);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.06);
  font-weight:1000;
}

.mrtb-value-game-title strong{
  font-size:22px;
}

.mrtb-value-game-title span{
  font-size:13px;
  color:#526079;
}

.mrtb-value-game-menu-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:26px;
}

.mrtb-value-game-menu-cards button{
  min-height:180px;
  border:0;
  border-radius:26px;
  padding:18px;
  background:linear-gradient(180deg,#fff,#eaf7ff);
  color:#263044;
  font:inherit;
  font-weight:1000;
  cursor:pointer;
  box-shadow:inset 0 -7px 0 rgba(0,0,0,.1), 0 12px 24px rgba(35,72,92,.14);
}

.mrtb-value-game-menu-cards button:hover{
  transform:translateY(-2px);
}

.mrtb-value-game-menu-cards button b{
  display:block;
  font-size:34px;
  margin-bottom:6px;
}

.mrtb-value-game-menu-cards button span{
  display:block;
  font-size:18px;
}

.mrtb-value-game-menu-cards button small{
  display:block;
  margin-top:8px;
  font-size:12px;
  color:#59677f;
}

.mrtb-value-game-split{
  position:absolute;
  left:50%;
  top:78px;
  bottom:18px;
  width:0;
  border-left:6px dashed rgba(38,48,68,.25);
  z-index:1;
  pointer-events:none;
}

.mrtb-value-game-panels{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:12px;
}

.mrtb-value-game-panel{
  min-height:255px;
  border-radius:26px;
  padding:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(242,247,255,.9));
  border:3px solid rgba(255,255,255,.86);
  box-shadow:inset 0 -6px 0 rgba(0,0,0,.07), 0 10px 20px rgba(35,72,92,.1);
  transition:.18s ease;
}

.mrtb-value-game-panel.team-a{
  border-color:rgba(70,151,255,.32);
}

.mrtb-value-game-panel.team-b{
  border-color:rgba(255,107,154,.32);
}

.mrtb-value-game-panel.correct{
  background:linear-gradient(180deg,#f1fff5,#caffdc);
  outline:5px solid rgba(50,201,114,.35);
}

.mrtb-value-game-panel.wrong{
  background:linear-gradient(180deg,#fff2f2,#ffd0d0);
  outline:5px solid rgba(255,88,88,.28);
}

.mrtb-value-game-team-badge{
  display:inline-block;
  padding:6px 12px;
  border-radius:999px;
  background:linear-gradient(180deg,#ffe078,#ffb433);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.1);
  font-size:14px;
  font-weight:1000;
}

.mrtb-value-game-equation{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:10px;
  margin-top:12px;
}

.mrtb-value-game-token{
  position:relative;
  min-height:168px;
  padding:14px 8px 10px;
  border-radius:24px;
  display:grid;
  place-items:center;
  text-align:center;
  background:rgba(255,255,255,.9);
  box-shadow:inset 0 -5px 0 rgba(0,0,0,.08);
  overflow:hidden;
}

.mrtb-value-game-token.from{
  background:linear-gradient(180deg,#fff8d7,#ffe389);
}

.mrtb-value-game-token.to{
  background:linear-gradient(180deg,#e9fff1,#c9ffda);
}

.mrtb-value-game-token b{
  display:block;
  margin-top:72px;
  font-size:18px;
  line-height:1;
  font-weight:1000;
}

.mrtb-value-game-token small{
  display:block;
  margin-top:4px;
  font-size:12px;
  font-weight:950;
  color:#59677f;
}

.mrtb-value-game-icon{
  position:absolute;
  top:22px;
  left:50%;
  transform:translateX(-50%);
  width:58px;
  height:58px;
}

.mrtb-value-game-icon .mrtb-value-icon{
  position:absolute !important;
  left:50% !important;
  top:10px !important;
  transform:translateX(-50%) scale(1.65) !important;
}

.mrtb-value-game-dots{
  position:absolute;
  left:50px;
  top:34px;
  display:flex;
  gap:5px;
}

.mrtb-value-game-dots i{
  display:block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#1f2535;
  box-shadow:0 1px 0 rgba(255,255,255,.6);
}

.mrtb-value-game-question-mark{
  min-width:70px;
  padding:10px 12px;
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#eaf1fb);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.09);
  text-align:center;
  font-size:15px;
  font-weight:1000;
}

.mrtb-value-game-mini-explain{
  margin-top:12px;
  padding:9px 11px;
  border-radius:18px;
  background:rgba(255,255,255,.82);
  font-size:14px;
  font-weight:950;
  text-align:center;
  color:#44526b;
}

.mrtb-values-game-hud{
  top:392px !important;
}

.mrtb-values-game-hud .mrtb-game-choices{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.mrtb-values-game-hud .mrtb-game-choice{
  min-height:42px;
  font-size:18px;
}

@media (max-width:1100px){
  .mrtb-value-game-stage{
    left:10px;
    right:10px;
    padding:10px;
  }

  .mrtb-value-game-equation{
    gap:6px;
  }

  .mrtb-value-game-token{
    min-height:145px;
  }

  .mrtb-value-game-token b{
    font-size:14px;
  }

  .mrtb-value-game-question-mark{
    min-width:54px;
    padding:8px;
    font-size:12px;
  }
}

@media (max-width:900px){
  .mrtb-value-game-stage{
    top:10px;
    min-height:420px;
  }

  .mrtb-value-game-title{
    display:grid;
    gap:3px;
  }

  .mrtb-value-game-menu-cards{
    grid-template-columns:1fr;
    gap:8px;
    margin-top:10px;
  }

  .mrtb-value-game-menu-cards button{
    min-height:82px;
    padding:10px;
  }

  .mrtb-value-game-menu-cards button b{
    font-size:22px;
  }

  .mrtb-value-game-panels{
    grid-template-columns:1fr;
    gap:8px;
  }

  .mrtb-value-game-split{
    display:none;
  }

  .mrtb-value-game-panel{
    min-height:168px;
    padding:8px;
  }

  .mrtb-value-game-equation{
    grid-template-columns:1fr auto 1fr;
  }

  .mrtb-value-game-token{
    min-height:105px;
    border-radius:18px;
  }

  .mrtb-value-game-token b{
    margin-top:48px;
    font-size:12px;
  }

  .mrtb-value-game-token small{
    font-size:10px;
  }

  .mrtb-value-game-icon .mrtb-value-icon{
    top:0 !important;
    transform:translateX(-50%) scale(.95) !important;
  }

  .mrtb-value-game-dots{
    left:39px;
    top:20px;
  }

  .mrtb-value-game-mini-explain{
    font-size:11px;
    padding:6px;
  }

  .mrtb-values-game-hud{
    top:442px !important;
  }
}

/* ===== dotted / double-dotted explanation for Template 2 v0.4.5 ===== */
.mrtb-value-dot-mode{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:8px auto 10px;
  padding:7px 10px;
  width:min(760px, calc(100% - 28px));
  border-radius:20px;
  background:rgba(255,255,255,.68);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.5), 0 8px 16px rgba(35,72,92,.08);
}

.mrtb-value-dot-mode button{
  border:0;
  min-height:34px;
  border-radius:999px;
  padding:7px 13px;
  background:linear-gradient(180deg,#fff,#eaf1fb);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.1), 0 5px 10px rgba(35,72,92,.1);
  color:#263044;
  font:inherit;
  font-size:13px;
  font-weight:1000;
  cursor:pointer;
}

.mrtb-value-dot-mode button.active{
  background:linear-gradient(180deg,#fff1a7,#ffb433);
}

.mrtb-value-path-card .mrtb-value-game-icon,
.mrtb-value-tree-node .mrtb-value-game-icon,
.mrtb-value-dot-root .mrtb-value-game-icon{
  position:relative !important;
  display:block !important;
  width:70px !important;
  height:64px !important;
  margin:0 auto 3px !important;
}

.mrtb-value-path-card .mrtb-value-game-icon .mrtb-value-icon,
.mrtb-value-tree-node .mrtb-value-game-icon .mrtb-value-icon,
.mrtb-value-dot-root .mrtb-value-game-icon .mrtb-value-icon{
  position:absolute !important;
  left:50% !important;
  top:8px !important;
  transform:translateX(-50%) scale(1.48) !important;
}

.mrtb-value-path-card .mrtb-value-game-dots,
.mrtb-value-tree-node .mrtb-value-game-dots,
.mrtb-value-dot-root .mrtb-value-game-dots{
  left:52px !important;
  top:37px !important;
}

.mrtb-value-dot-breakdown{
  width:min(980px, 100%);
  margin:10px auto 0;
  padding:14px 14px 16px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(232,255,244,.72));
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.65), 0 9px 20px rgba(35,72,92,.1);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.mrtb-value-dot-root{
  min-width:280px;
  max-width:420px;
  min-height:94px;
  margin:0 auto;
  padding:10px 18px;
  border-radius:22px;
  background:linear-gradient(180deg,#fff7c6,#f6d66e);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.1), 0 8px 14px rgba(35,72,92,.1);
  text-align:center;
  font-weight:1000;
}

.mrtb-value-dot-root b{
  display:block;
  font-size:15px;
  line-height:1.05;
}

.mrtb-value-dot-arrows{
  width:min(900px, 100%);
  display:grid;
  align-items:center;
  justify-items:center;
  gap:12px;
  font-size:34px;
  line-height:1;
  color:#ff8526;
  font-weight:1000;
}

.mrtb-value-dot-arrows.layout-two{
  grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);
}

.mrtb-value-dot-arrows.layout-three{
  grid-template-columns:minmax(260px,1fr) minmax(180px,.9fr) minmax(260px,1fr);
}

.mrtb-value-dot-arrows span{
  display:block;
  width:100%;
  text-align:center;
}

.mrtb-value-dot-main{
  width:min(980px, 100%);
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(460px,1.45fr);
  gap:18px;
  align-items:stretch;
}

.mrtb-value-dot-side{
  display:grid;
  gap:12px;
  align-items:stretch;
}

.mrtb-value-dot-side.dots-1{
  grid-template-columns:minmax(240px,1fr);
}

.mrtb-value-dot-side.dots-2{
  grid-template-columns:repeat(2,minmax(200px,1fr));
}

.mrtb-value-dot-box{
  min-width:0;
  width:100%;
  padding:13px 14px;
  border-radius:20px;
  background:linear-gradient(180deg,#fff,#eaf1fb);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.08), 0 7px 13px rgba(35,72,92,.09);
  text-align:center;
  font-weight:1000;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.mrtb-value-dot-box.dot1{
  background:linear-gradient(180deg,#fff2cc,#ffd27e);
}

.mrtb-value-dot-box.dot2{
  background:linear-gradient(180deg,#fff7dc,#ffe39d);
}

.mrtb-value-dot-box b,
.mrtb-value-dot-box span,
.mrtb-value-dot-box small{
  display:block;
}

.mrtb-value-dot-box span{
  margin-top:4px;
  font-size:22px;
  line-height:1.05;
}

.mrtb-value-dot-box small{
  margin-top:5px;
  font-size:11px;
  color:#58667d;
}

.mrtb-value-dot-total{
  min-width:min(520px,100%);
  padding:12px 20px;
  border-radius:22px;
  background:linear-gradient(180deg,#d9ffc8,#72df84);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.1), 0 7px 14px rgba(35,72,92,.1);
  font-size:18px;
  font-weight:1000;
  color:#143820;
  text-align:center;
}

.mrtb-value-dot-total-label{
  display:block;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.6px;
  opacity:.85;
  margin-bottom:2px;
}

.mrtb-value-dot-total b,
.mrtb-value-dot-total small{
  display:block;
}

.mrtb-value-dot-total b{
  font-size:28px;
  line-height:1.05;
}

.mrtb-value-dot-total small{
  margin-top:3px;
  font-size:14px;
  opacity:.92;
}

@media (max-width:900px){
  .mrtb-value-dot-mode{
    gap:5px;
    padding:5px;
    margin:6px auto 7px;
  }

  .mrtb-value-dot-mode button{
    min-height:30px;
    padding:5px 8px;
    font-size:11px;
  }

  .mrtb-value-dot-breakdown{
    padding:8px;
    border-radius:18px;
    gap:8px;
  }

  .mrtb-value-dot-root{
    min-width:170px;
    max-width:100%;
    min-height:82px;
    padding:8px;
  }

  .mrtb-value-dot-arrows{
    font-size:24px;
    gap:6px;
  }

  .mrtb-value-dot-main,
  .mrtb-value-dot-side.dots-1,
  .mrtb-value-dot-side.dots-2,
  .mrtb-value-dot-arrows.layout-two,
  .mrtb-value-dot-arrows.layout-three{
    grid-template-columns:1fr;
  }

  .mrtb-value-dot-box{
    padding:9px;
  }

  .mrtb-value-dot-box span{
    font-size:16px;
  }

  .mrtb-value-dot-total{
    min-width:0;
    width:100%;
    font-size:15px;
  }

  .mrtb-value-dot-total b{
    font-size:22px;
  }

  .mrtb-value-dot-total small{
    font-size:12px;
  }
}


/* ===== v0.5.1 fix: να φαίνεται πάντα το Παιχνίδι Νότες ===== */
.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-staff{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-game-hud{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  z-index:90 !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-game-level-menu:not([hidden]){
  display:grid !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-game-level-board{
  position:absolute;
  left:50%;
  top:22px;
  transform:translateX(-50%);
  z-index:8;
  padding:8px 16px;
  border-radius:999px;
  background:linear-gradient(180deg,#fff7b8,#ffbe45);
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.12), 0 8px 16px rgba(35,72,92,.14);
  font-weight:1000;
  pointer-events:none;
}


/* ===== v0.5.2 hard fix: notes game ορατό και καθαρό ===== */
.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-values-scene,
.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-value-game-stage{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-board-wrap{
  overflow:hidden !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-staff.mrtb-game-staff{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  z-index:10 !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-game-hud{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  z-index:120 !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-game-level-menu:not([hidden]){
  display:grid !important;
  visibility:visible !important;
  opacity:1 !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-game-teams:not([hidden]){
  display:grid !important;
}

.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-game-split,
.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-team-label,
.mrtb-app[data-scene="notes"].mrtb-game-mode .mrtb-game-level-board{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}

/* ===== Notes game result μπροστά ===== */

.mrtb-app.mrtb-notes-result-open .mrtb-game-hud{
  opacity:0 !important;
  pointer-events:none !important;
  z-index:1 !important;
}

.mrtb-app.mrtb-notes-result-open .mrtb-game-result{
  position:absolute !important;
  inset:0 !important;
  z-index:999999 !important;
  display:grid !important;
  place-items:center !important;
  padding:24px !important;
  background:rgba(45,120,180,.24) !important;
  backdrop-filter:blur(7px) !important;
  pointer-events:auto !important;
}

.mrtb-app.mrtb-notes-result-open .mrtb-game-result-card{
  position:relative !important;
  z-index:1000000 !important;
  max-height:calc(100% - 48px) !important;
  overflow:auto !important;
}

/* ===== Draw δουλεύει πάνω από όλα τα templates ===== */

.mrtb-app.mrtb-draw-on:not(.mrtb-game-mode) .mrtb-draw-canvas{
  z-index:9990 !important;
  pointer-events:auto !important;
}

.mrtb-app.mrtb-draw-on[data-scene="values"] .mrtb-values-scene{
  pointer-events:none !important;
}

.mrtb-app.mrtb-draw-on[data-scene="values"] .mrtb-draw-canvas{
  cursor:crosshair !important;
}



/* Palette για τελίτσες */
.mrtb-value-dot-palette{
  grid-column:1 / -1;
  display:flex;
  gap:6px;
  align-items:center;
  justify-content:center;
  padding:5px;
  border-radius:14px;
  background:rgba(255,255,255,.78);
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.08);
}

.mrtb-value-dot-palette button{
  min-height:28px;
  border:0;
  border-radius:999px;
  padding:5px 9px;
  background:linear-gradient(180deg,#ffffff,#eaf5ff);
  color:#263044;
  font:inherit;
  font-size:10.5px;
  font-weight:1000;
  cursor:pointer;
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.1), 0 4px 10px rgba(40,60,80,.08);
}

.mrtb-value-dot-palette button span{
  display:inline-block;
  min-width:16px;
  margin-left:3px;
  font-size:18px;
  line-height:0;
  transform:translateY(-1px);
}

.mrtb-value-dot-palette button.selected{
  background:linear-gradient(180deg,#fff48b,#ffc44d);
  color:#1f2535;
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.16), 0 0 0 3px rgba(255,196,77,.3);
}

.mrtb-value-icon{
  position:relative;
}

.mrtb-value-preview-dots{
  position:absolute;
  left:34px;
  top:19px;
  display:flex;
  gap:3px;
  pointer-events:none;
}

.mrtb-value-preview-dots i{
  width:5px;
  height:5px;
  border-radius:999px;
  background:#1f2535;
}

/* Τελίτσες πάνω στις κανονικές νότες */
.mrtb-note-glyph{
  position:relative;
}

.mrtb-note-dots{
  position:absolute;
  left:52px;
  top:29px;
  z-index:12;
  display:flex;
  gap:4px;
  pointer-events:none;
}

.mrtb-note-dots i{
  width:6px;
  height:6px;
  border-radius:999px;
  background:#1f2535;
}

.mrtb-board-note[data-dots="1"] .mrtb-note-value::after{
  content:" ·";
}

.mrtb-board-note[data-dots="2"] .mrtb-note-value::after{
  content:" ··";
}

/* ===== FIX top menu compact / να φαίνονται όλες οι αξίες ===== */

.mrtb-sidebar{
  display:grid !important;
  grid-template-columns:minmax(660px,auto) minmax(520px,1fr) !important;
  align-items:center !important;
  gap:6px !important;
  max-height:66px !important;
  padding:4px 6px !important;
  overflow:hidden !important;
}

.mrtb-tools-section{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  min-width:0 !important;
  overflow:hidden !important;
}

.mrtb-tools-section .mrtb-panel-title,
.mrtb-values-section .mrtb-panel-title{
  margin:0 5px 0 0 !important;
  font-size:9px !important;
  line-height:1 !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
}

.mrtb-tools-section .mrtb-tool-row{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:4px !important;
  margin:0 !important;
  min-width:0 !important;
}

.mrtb-tools-section .mrtb-btn{
  min-height:28px !important;
  padding:3px 7px !important;
  border-radius:10px !important;
  font-size:12px !important;
  white-space:nowrap !important;
}

/* ===== FIX: πιο κομψές / λεπτές αξίες στο επάνω menu ===== */

.mrtb-values-section .mrtb-value-chip{
  width:46px !important;
  min-width:46px !important;
  height:50px !important;
  min-height:50px !important;
  padding:2px 2px 3px !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#ffffff,#eef5ff) !important;
  box-shadow:
    inset 0 -3px 0 rgba(0,0,0,.07),
    0 5px 10px rgba(35,72,92,.08) !important;
}

.mrtb-values-section .mrtb-value-chip.selected{
  outline:4px solid rgba(255,199,76,.55) !important;
  background:linear-gradient(180deg,#fffef4,#fff2c0) !important;
}

.mrtb-values-section .mrtb-value-icon{
  position:relative !important;
  display:block !important;
  width:32px !important;
  height:32px !important;
  flex:0 0 32px !important;
  transform:none !important;
}

/* πιο λεπτή κεφαλή */
.mrtb-values-section .mrtb-value-head{
  position:absolute !important;
  left:5px !important;
  top:18px !important;
  width:17px !important;
  height:10px !important;
  border:2px solid #1f2535 !important;
  border-radius:50% !important;
  transform:rotate(-18deg) !important;
  background:#1f2535 !important;
}

/* μισό / ολόκληρο ανοιχτή κεφαλή */
.mrtb-values-section .mrtb-value-icon.open .mrtb-value-head{
  background:#fff !important;
}

/* ολόκληρο πιο καθαρό */
.mrtb-values-section .mrtb-value-icon.whole .mrtb-value-head{
  left:4px !important;
  top:18px !important;
  width:23px !important;
  height:11px !important;
  border-width:2.4px !important;
  background:#fff !important;
}

/* πιο λεπτό stem */
.mrtb-values-section .mrtb-value-stem{
  position:absolute !important;
  left:21px !important;
  top:3px !important;
  width:2.4px !important;
  height:24px !important;
  border-radius:4px !important;
  background:#1f2535 !important;
}

/* ολόκληρο χωρίς stem */
.mrtb-values-section .mrtb-value-icon.whole .mrtb-value-stem{
  display:none !important;
}

/* πιο λεπτές ουρίτσες */
.mrtb-values-section .mrtb-value-flag{
  position:absolute !important;
  left:21px !important;
  width:10px !important;
  height:10px !important;
  border:0 !important;
  border-top:3px solid #1f2535 !important;
  border-radius:0 12px 11px 0 !important;
  background:transparent !important;
  transform-origin:left top !important;
  transform:rotate(24deg) !important;
}

.mrtb-values-section .mrtb-value-flag.f1{ top:3px !important; }
.mrtb-values-section .mrtb-value-flag.f2{ top:9px !important; }
.mrtb-values-section .mrtb-value-flag.f3{ top:15px !important; }
.mrtb-values-section .mrtb-value-flag.f4{ top:21px !important; }

/* ολόκληρο / μισό / τέταρτο χωρίς ουρίτσες */
.mrtb-values-section .mrtb-value-icon.whole .mrtb-value-flag,
.mrtb-values-section .mrtb-value-icon.half .mrtb-value-flag,
.mrtb-values-section .mrtb-value-icon.quarter .mrtb-value-flag{
  display:none !important;
}

/* όγδοο = 1 ουρίτσα */
.mrtb-values-section .mrtb-value-icon.eighth .mrtb-value-flag.f2,
.mrtb-values-section .mrtb-value-icon.eighth .mrtb-value-flag.f3,
.mrtb-values-section .mrtb-value-icon.eighth .mrtb-value-flag.f4{
  display:none !important;
}

/* 16ο = 2 ουρίτσες */
.mrtb-values-section .mrtb-value-icon.sixteenth .mrtb-value-flag.f3,
.mrtb-values-section .mrtb-value-icon.sixteenth .mrtb-value-flag.f4{
  display:none !important;
}

/* 32ο = 3 ουρίτσες */
.mrtb-values-section .mrtb-value-icon.thirtysecond .mrtb-value-flag.f4{
  display:none !important;
}

/* πιο καθαρό label κάτω από την αξία */
.mrtb-values-section .mrtb-value-chip small{
  font-size:7.6px !important;
  line-height:.9 !important;
  font-weight:950 !important;
  margin-top:0 !important;
  color:#2f3a52 !important;
}
/* λίγο μικρότερα select επάνω */
.mrtb-module-select{
  width:132px !important;
  min-width:118px !important;
}

.mrtb-template-select{
  width:205px !important;
  min-width:178px !important;
}

.mrtb-top-actions{
  gap:4px !important;
}

.mrtb-top-actions .mrtb-btn,
.mrtb-top-actions .mrtb-select{
  min-height:28px !important;
  padding-top:3px !important;
  padding-bottom:3px !important;
}

/* Σε μικρότερες οθόνες άστο να σπάει σε 2 σειρές αντί να κόβει αξίες */
@media (max-width:1300px){
  .mrtb-sidebar{
    grid-template-columns:1fr !important;
    max-height:118px !important;
  }

  .mrtb-tools-section .mrtb-tool-row{
    flex-wrap:wrap !important;
  }

  .mrtb-values-section .mrtb-palette-grid{
    flex-wrap:wrap !important;
  }
}

/* =========================================================
   MR Theory Board - Τρίηχα στις αξίες
   Προσθήκη για το κουμπί 3 toggle, ένδειξη στις νότες και
   καθαρή εξήγηση: 3 τρίηχα = 2 ίδια = 1 μεγαλύτερη αξία.
   ========================================================= */

.mrtb-value-dot-palette .mrtb-triplet-toggle,
.mrtb-value-dot-mode .mrtb-triplet-toggle{
  min-width:34px !important;
  font-weight:1000 !important;
  color:#263044 !important;
  background:linear-gradient(180deg,#e9f6ff,#b8dcff) !important;
}

.mrtb-value-dot-palette .mrtb-triplet-toggle.selected,
.mrtb-value-dot-mode .mrtb-triplet-toggle.active{
  background:linear-gradient(180deg,#ffe078,#ffb433) !important;
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.16), 0 0 0 3px rgba(255,184,46,.28) !important;
}

.mrtb-value-preview-triplet,
.mrtb-value-triplet-mark,
.mrtb-note-triplet{
  position:absolute !important;
  display:grid !important;
  place-items:center !important;
  width:18px !important;
  height:18px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#fff7bf,#ffbf3a) !important;
  color:#1f2535 !important;
  border:2px solid rgba(31,37,53,.88) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:1000 !important;
  box-shadow:0 2px 0 rgba(255,255,255,.75), 0 5px 8px rgba(35,72,92,.12) !important;
  pointer-events:none !important;
  z-index:12 !important;
}

.mrtb-value-preview-triplet{
  right:-6px !important;
  top:-6px !important;
  transform:scale(.85) !important;
}

.mrtb-value-triplet-mark{
  right:-8px !important;
  top:-8px !important;
}

.mrtb-note-triplet{
  left:20px !important;
  top:-10px !important;
}

.mrtb-value-game-icon.triplet{
  position:relative !important;
  overflow:visible !important;
}

.mrtb-value-picker-block.triplet-info .mrtb-values-picker button{
  min-width:90px !important;
  cursor:default !important;
}

.mrtb-value-triplet-wrap{
  display:grid !important;
  gap:14px !important;
  padding:14px !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(238,247,255,.94)) !important;
  box-shadow:0 12px 24px rgba(35,72,92,.10), inset 0 -4px 0 rgba(0,0,0,.05) !important;
}

.mrtb-value-triplet-title{
  display:grid !important;
  gap:4px !important;
  text-align:center !important;
}

.mrtb-value-triplet-title b{
  font-size:22px !important;
  font-weight:1000 !important;
  color:#243044 !important;
}

.mrtb-value-triplet-title span{
  font-size:13px !important;
  font-weight:900 !important;
  color:#526079 !important;
}

.mrtb-value-triplet-equation{
  display:grid !important;
  grid-template-columns:1fr auto 1fr auto 1fr !important;
  gap:10px !important;
  align-items:center !important;
}

.mrtb-value-triplet-box{
  min-height:138px !important;
  padding:12px 10px !important;
  border-radius:22px !important;
  display:grid !important;
  place-items:center !important;
  gap:7px !important;
  text-align:center !important;
  background:rgba(255,255,255,.92) !important;
  border:3px solid rgba(38,48,68,.08) !important;
  box-shadow:inset 0 -4px 0 rgba(0,0,0,.06), 0 8px 16px rgba(35,72,92,.08) !important;
}

.mrtb-value-triplet-box.triplet{
  background:linear-gradient(180deg,#fff8d7,#ffe389) !important;
}

.mrtb-value-triplet-box.same.show{
  background:linear-gradient(180deg,#e9f6ff,#c7e7ff) !important;
}

.mrtb-value-triplet-box.larger.show{
  background:linear-gradient(180deg,#f0fff0,#cdfbd2) !important;
}

.mrtb-value-triplet-box.locked{
  opacity:.55 !important;
  filter:grayscale(.22) !important;
}

.mrtb-value-triplet-box b{
  font-size:13px !important;
  font-weight:1000 !important;
  color:#243044 !important;
}

.mrtb-value-triplet-box small{
  font-size:12px !important;
  font-weight:950 !important;
  color:#526079 !important;
}

.mrtb-value-triplet-icons{
  min-height:62px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}

.mrtb-value-triplet-icons em{
  display:grid !important;
  place-items:center !important;
  width:46px !important;
  height:46px !important;
  border-radius:16px !important;
  background:rgba(38,48,68,.08) !important;
  color:#7b8798 !important;
  font-style:normal !important;
  font-size:28px !important;
  font-weight:1000 !important;
}

.mrtb-value-triplet-sign{
  display:grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.08) !important;
  font-size:24px !important;
  font-weight:1000 !important;
  color:#243044 !important;
}

.mrtb-value-triplet-sign.locked{
  opacity:.35 !important;
}

.mrtb-value-triplet-summary{
  padding:10px 12px !important;
  border-radius:18px !important;
  text-align:center !important;
  background:rgba(255,255,255,.9) !important;
  color:#526079 !important;
  font-size:14px !important;
  font-weight:950 !important;
}

.mrtb-value-triplet-summary.solved{
  background:linear-gradient(180deg,#dfffda,#a9ff97) !important;
  color:#146b38 !important;
}

.triplet-buttons button small{
  white-space:nowrap !important;
}

@media (max-width:900px){
  .mrtb-value-triplet-equation{
    grid-template-columns:1fr !important;
  }

  .mrtb-value-triplet-sign{
    margin:0 auto !important;
  }
}


/* ===== σωστό τρίηχο: ένα 3 και αγκύλη πάνω από κάθε τριάδα ===== */
.mrtb-board-tuplet,
.mrtb-rhythm-tuplet{
  position:absolute;
  height:26px;
  pointer-events:none;
  z-index:38;
}

.mrtb-board-tuplet .mrtb-tuplet-line,
.mrtb-rhythm-tuplet .mrtb-tuplet-line{
  position:absolute;
  top:10px;
  height:4px;
  background:#1f2535;
  border-radius:3px;
}

.mrtb-board-tuplet .mrtb-tuplet-line.left,
.mrtb-rhythm-tuplet .mrtb-tuplet-line.left{
  left:0;
  right:calc(50% + 18px);
}

.mrtb-board-tuplet .mrtb-tuplet-line.right,
.mrtb-rhythm-tuplet .mrtb-tuplet-line.right{
  left:calc(50% + 18px);
  right:0;
}

.mrtb-board-tuplet .mrtb-tuplet-hook,
.mrtb-rhythm-tuplet .mrtb-tuplet-hook{
  position:absolute;
  top:10px;
  width:4px;
  height:14px;
  background:#1f2535;
  border-radius:3px;
}

.mrtb-board-tuplet .mrtb-tuplet-hook.left,
.mrtb-rhythm-tuplet .mrtb-tuplet-hook.left{
  left:0;
}

.mrtb-board-tuplet .mrtb-tuplet-hook.right,
.mrtb-rhythm-tuplet .mrtb-tuplet-hook.right{
  right:0;
}

.mrtb-board-tuplet .mrtb-tuplet-num,
.mrtb-rhythm-tuplet .mrtb-tuplet-num{
  position:absolute;
  left:50%;
  top:-11px;
  transform:translateX(-50%);
  padding:0 6px;
  background:transparent;
  color:#1f2535;
  font-family:"Times New Roman",serif;
  font-size:38px;
  line-height:1;
  font-weight:700;
}

.mrtb-rhythm-tuplet .mrtb-tuplet-num{
  font-size:32px;
  top:-9px;
}

.mrtb-rhythm-selected-icon,
.mrtb-value-game-icon.triplet,
.mrtb-value-icon.triplet{
  position:relative;
}

.mrtb-rhythm-triplet-badge,
.mrtb-value-preview-triplet,
.mrtb-value-triplet-mark{
  position:absolute;
  right:-8px;
  top:-8px;
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:999px;
  background:linear-gradient(180deg,#fff7bf,#ffbf3a);
  color:#1f2535;
  border:2px solid rgba(31,37,53,.88);
  font-size:12px;
  line-height:1;
  font-weight:1000;
  box-shadow:0 2px 0 rgba(255,255,255,.75), 0 5px 8px rgba(35,72,92,.12);
}


/* ===== MOBILE SCROLL + PINCH ZOOM FIX ===== */
@media (max-width: 900px){

  .mrtb-app,
  .mrtb-board{
    touch-action: pan-x pan-y pinch-zoom !important;
  }

  .mrtb-board{
    -webkit-overflow-scrolling: touch;
  }

  /* Τα πλήκτρα πατιούνται κανονικά, αλλά δεν κλειδώνουν scroll/zoom */
  .mrtb-key,
  .mrtb-btn,
  .mrtb-select{
    touch-action: manipulation !important;
  }

  /* Το μεγάλο κουτί της νότας δεν μπλοκάρει την οθόνη */
  .mrtb-board-note{
    touch-action: auto !important;
  }

  /* Μόνο το μικρό σημείο επιλογής κρατάει το drag της νότας */
  .mrtb-note-hitbox{
    touch-action: none !important;
  }

  /* Όταν είναι ενεργό το Draw, το δάχτυλο ζωγραφίζει αντί να κάνει scroll */
  .mrtb-app.mrtb-draw-on .mrtb-draw-canvas{
    touch-action: none !important;
  }
}

/* =========================================================
   DRAW / ERASE FIX
   Scroll και zoom όταν το Draw είναι κλειστό.
   Ζωγραφική όταν το Draw είναι ενεργό.
   ========================================================= */

/* Κανονικά το canvas δεν πιάνει το δάχτυλο. */
.mrtb-app .mrtb-draw-canvas{
  pointer-events:none !important;
  touch-action:pan-x pan-y pinch-zoom !important;
}

/* Μόνο όταν είναι ενεργό το Draw ή το Erase. */
.mrtb-app.mrtb-draw-on .mrtb-draw-canvas{
  pointer-events:auto !important;
  touch-action:none !important;
  user-select:none !important;
  -webkit-user-select:none !important;
  cursor:crosshair !important;
  z-index:9990 !important;
}