/* Hartly · v78 · بلوک 094 از ۱۱۸
   V78
   تولید خودکار توسط tools/split-layers.py */
/* ============ V78 — رولت دقیقاً مثل فیلم لیگو ============ */
#rl78{position:fixed;inset:0;z-index:104;overflow-y:auto;overflow-x:hidden;
  background:linear-gradient(180deg,#3a2a66 0%,#2a1d4e 34%,#1c1338 100%)}
.rl78-stage{position:relative;min-height:100%;display:flex;flex-direction:column}
/* میز سبز با ریل برنجی */
.rl78-felt{position:relative;flex:1;margin-top:150px;
  background:radial-gradient(130% 90% at 50% 0%, #21a057 0%, #147a40 42%, #0b5a2d 78%, #084a24 100%);
  border-top:4px solid #caa14f;border-radius:34px 34px 0 0;
  box-shadow:0 -6px 0 #7a5a1e, 0 -10px 24px rgba(0,0,0,.45), inset 0 2px 0 rgba(255,255,255,.15)}
.rl78-felt::before{content:"";position:absolute;inset:0;border-radius:34px 34px 0 0;pointer-events:none;opacity:.4;
  background:repeating-linear-gradient(45deg,rgba(255,255,255,.018) 0 2px,transparent 2px 20px)}
/* چرخ — نیمی روی میز، نیمی بالای میز */
.rl78-wheelbox{position:absolute;top:-118px;right:50%;transform:translateX(50%);width:min(62vw,250px);z-index:5}
.rl78-wheelbox svg{display:block;width:100%;height:auto;filter:drop-shadow(0 12px 22px rgba(0,0,0,.55))}
#rl78rotor,#rl78ballG{transform-origin:150px 150px}
#rl78ball{transition:transform .35s ease}
/* متن START وسط چرخ */
#rl78Center{position:absolute;left:0;right:0;top:56%;text-align:center;pointer-events:none;z-index:6}
#rl78Center .st{color:#ffd23e;font-size:20px;font-weight:900;font-style:italic;text-shadow:0 2px 0 #7a4a00,0 4px 10px rgba(0,0,0,.6);letter-spacing:1px}
/* بنرهای روبان روی چرخ */
.rl78-ribbon{position:absolute;left:-16%;right:-16%;top:58%;z-index:7;text-align:center;padding:9px 6px;
  background:rgba(20,14,8,.78);box-shadow:0 2px 12px rgba(0,0,0,.5);border-top:1px solid rgba(255,210,110,.35);border-bottom:1px solid rgba(255,210,110,.35);
  font-size:15px;font-weight:800;color:#fff;animation:rl78rb .3s ease}
.rl78-ribbon.yellow{color:#ffe27a}
@keyframes rl78rb{0%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:none}}
/* بنر نتیجه با غلاف و برگ‌های طلایی */
.rl78-resban{position:absolute;left:-20%;right:-20%;top:52%;z-index:8;text-align:center;animation:rl78rb .35s ease}
.rl78-resban .rib{position:relative;display:inline-flex;align-items:center;gap:10px;padding:8px 22px;
  background:linear-gradient(180deg,#4a2f14,#2c1c0b);border-top:2px solid #caa14f;border-bottom:2px solid #caa14f;
  box-shadow:0 4px 16px rgba(0,0,0,.6)}
.rl78-resban .rib::before,.rl78-resban .rib::after{content:"❧";position:absolute;top:50%;transform:translateY(-50%);color:#caa14f;font-size:18px}
.rl78-resban .rib::before{left:6px}.rl78-resban .rib::after{right:6px;transform:translateY(-50%) scaleX(-1)}
.rl78-resban .poc{width:34px;height:34px;border-radius:7px;transform:rotate(45deg);display:flex;align-items:center;justify-content:center;
  border:2px solid #caa14f;box-shadow:inset 0 0 8px rgba(0,0,0,.5)}
.rl78-resban .poc span{transform:rotate(-45deg);color:#fff;font-weight:900;font-size:15px;text-shadow:0 1px 3px rgba(0,0,0,.7)}
.rl78-resban .poc.red{background:linear-gradient(135deg,#e05252,#8f1d1d)}
.rl78-resban .poc.black{background:linear-gradient(135deg,#4b5563,#111)}
.rl78-resban .poc.green{background:linear-gradient(135deg,#34d399,#065f46)}
.rl78-resban .nt{color:#e8c37a;font-size:13px;font-weight:800}
.rl78-resban .nb{color:#fff;font-size:26px;font-weight:900;text-shadow:0 2px 6px rgba(0,0,0,.6)}
.rl78-resban .mine{margin-top:7px;color:#fff;font-size:14px;font-weight:800;text-shadow:0 2px 6px rgba(0,0,0,.7)}
.rl78-resban .mine b{color:#ffd23e;margin-right:14px}
/* دکمه‌های کناری */
.rl78-sidebtn{position:absolute;z-index:6;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 35% 30%,#3ddcbe,#0d9488);border:2px solid rgba(255,255,255,.55);color:#fff;font-size:17px;font-weight:900;
  box-shadow:0 4px 12px rgba(0,0,0,.4)}
.rl78-new{position:absolute;z-index:6;cursor:pointer;background:rgba(10,74,42,.85);border:2px solid #2ea36a;border-radius:11px;padding:5px 10px 7px;text-align:center;
  box-shadow:0 4px 12px rgba(0,0,0,.35)}
.rl78-new .n1{color:#fff;font-size:13px;font-weight:900}
.rl78-newball{margin:4px auto 0;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:900;
  border:2px solid rgba(255,255,255,.55);box-shadow:inset 0 -3px 6px rgba(0,0,0,.4)}
.rl78-ballc.red{background:radial-gradient(circle at 35% 30%,#f87171,#9f1239)}
.rl78-ballc.black{background:radial-gradient(circle at 35% 30%,#6b7280,#111827)}
.rl78-ballc.green{background:radial-gradient(circle at 35% 30%,#4ade80,#166534)}
.rl78-ballc.none{background:radial-gradient(circle at 35% 30%,#6b7280,#111827)}
/* باکس شمارش معکوس */
#rl78Cd{position:absolute;z-index:6;min-width:56px;text-align:center;padding:5px 10px;border-radius:9px;
  background:#0b3d29;border:2px solid #2ea36a;color:#7ef0e0;font-size:21px;font-weight:900;
  text-shadow:0 0 10px rgba(126,240,224,.8);box-shadow:0 4px 14px rgba(0,0,0,.4), inset 0 0 12px rgba(126,240,224,.12)}
/* مجموع شرط */
.rl78-tot{position:relative;z-index:4;text-align:center;padding-top:140px;color:#d9ffe8;font-size:14px;font-weight:800;line-height:1.85;text-shadow:0 1px 3px rgba(0,0,0,.4)}
.rl78-tot b{color:#d9ffe8;font-weight:900}
/* خانه‌های شرط */
.rl78-grid{position:relative;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:10px 12px 6px}
.rl78-tile{position:relative;border-radius:10px;padding:8px 2px 9px;text-align:center;cursor:pointer;user-select:none;border:2px solid #3cb377;transition:transform .1s}
.rl78-tile:active{transform:scale(.94)}
.rl78-tile.r1{background:linear-gradient(180deg,#1c9a50,#12763c)}
.rl78-tile.r2{background:linear-gradient(180deg,#0f6b38,#0a4d26)}
.rl78-tile .cnt{font-size:9.5px;font-weight:800;color:#9fd4b3}
.rl78-tile .lbl{font-size:19px;font-weight:900;color:#fff;margin-top:1px;text-shadow:0 1px 3px rgba(0,0,0,.35)}
.rl78-tile.r2 .lbl{color:rgba(0,0,0,.5);text-shadow:0 1px 0 rgba(255,255,255,.14)}
.rl78-tile .odd{font-size:12px;font-weight:800;color:#6fbf8f;margin-top:1px}
.rl78-tile.win{border-color:#ffd54a;box-shadow:0 0 0 2px #ffd54a,0 0 22px 4px rgba(255,213,74,.6);animation:rl78wp .8s ease 3}
@keyframes rl78wp{50%{transform:scale(1.05)}}
.rl78-tile .chips{position:absolute;inset:0;pointer-events:none}
.rl78-tile .chips span{position:absolute;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:7px;font-weight:900;color:#fff;border:2px dashed rgba(255,255,255,.9);box-shadow:0 2px 5px rgba(0,0,0,.45)}
/* چیپ پرنده */
.rl78-fly{position:fixed;z-index:108;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:8.5px;font-weight:900;color:#fff;border:2.5px dashed rgba(255,255,255,.95);box-shadow:0 4px 10px rgba(0,0,0,.5);
  transition:transform .45s cubic-bezier(.2,.7,.3,1), opacity .45s;pointer-events:none}
/* نوار پایین مشکی */
.rl78-bar{position:sticky;bottom:0;z-index:9;display:flex;align-items:center;gap:9px;padding:9px 12px 14px;
  background:linear-gradient(180deg,#241a10,#120d07);border-top:2px solid #caa14f;box-shadow:0 -6px 18px rgba(0,0,0,.5)}
.rl78-bal{display:flex;align-items:center;gap:6px;background:rgba(0,0,0,.55);border-radius:999px;padding:5px 12px;min-width:82px}
.rl78-bal .ci{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe9a8,#d4a017);border:2px solid #8a6a10;
  display:flex;align-items:center;justify-content:center;font-size:11px;color:#7a5a00;font-weight:900}
.rl78-bal b{color:#fff;font-size:13px;font-weight:900}
.rl78-chip{cursor:pointer;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;color:#fff;
  border:3px dashed rgba(255,255,255,.9);transition:all .15s;flex:none;box-shadow:0 4px 10px rgba(0,0,0,.45)}
.rl78-chip:not(.sel){filter:grayscale(.75) brightness(.85);opacity:.8}
.rl78-chip.sel{transform:scale(1.12);box-shadow:0 0 0 2.5px #ffd54a,0 6px 14px rgba(0,0,0,.5)}
.rl78-reset{margin-right:auto;width:40px;height:40px;border-radius:50%;border:2.5px solid #caa14f;background:rgba(0,0,0,.4);color:#ffd23e;font-size:19px;cursor:pointer;flex:none}
/* مودال سبز/کرم مثل فیلم */
.rl78-modal{position:fixed;inset:0;z-index:107;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;padding:18px}
.rl78-mcard{width:100%;max-width:400px;max-height:76vh;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;
  border:3px solid #2ea36a;box-shadow:0 20px 50px rgba(0,0,0,.6);background:#f8f3e7}
.rl78-mhead{display:flex;align-items:center;justify-content:center;position:relative;padding:13px;background:linear-gradient(180deg,#17a05e,#0d7a44)}
.rl78-mhead b{color:#f0ff8a;font-size:17px;font-weight:900;text-shadow:0 1px 3px rgba(0,0,0,.3)}
.rl78-mhead button{position:absolute;left:10px;top:50%;transform:translateY(-50%);background:none;border:0;color:#fff;font-size:22px;font-weight:900;cursor:pointer;line-height:1}
.rl78-mbody{overflow-y:auto;padding:14px}
.rl78-balls{display:grid;grid-template-columns:repeat(10,1fr);gap:7px}
.rl78-balls .rl78-ballc{width:100%;aspect-ratio:1;height:auto;font-size:12px;border-width:1.5px}
.rl78-htbl{width:100%;border-collapse:collapse}
.rl78-htbl th{color:#b45309;font-size:12.5px;font-weight:900;padding:6px 4px;text-align:right}
.rl78-hrow{background:#efe7d3;border-radius:9px;margin-bottom:6px;display:grid;grid-template-columns:1.5fr .9fr .7fr .8fr .7fr;gap:3px;align-items:center;padding:8px 10px;
  color:#4a3b22;font-size:10.5px;font-weight:700}
.rl78-hrow .rl78-ballc{width:22px;height:22px;font-size:11px;display:inline-flex}
.rl78-hrow .w{color:#16a34a}.rl78-hrow .l{color:#dc2626}
.rl78-help{color:#4a3b22;font-size:12.5px;font-weight:700;line-height:2}
.rl78-help h4{color:#b45309;font-size:13.5px;margin:4px 0 2px}
.rl78-help table{width:100%;border-collapse:collapse;margin-top:4px;background:#fff}
.rl78-help td{border:1px solid #e5d9bd;padding:6px 8px;font-size:12px;text-align:center;color:#4a3b22}
/* بستن */
.rl78-x{position:absolute;top:12px;left:12px;z-index:10;width:34px;height:34px;border-radius:50%;background:rgba(0,0,0,.45);border:1.5px solid rgba(255,255,255,.4);color:#fff;font-size:14px;cursor:pointer}
.rl78-logo{position:absolute;top:14px;right:14px;z-index:10;color:#e9d5ff;font-weight:900;font-size:15px;text-shadow:0 2px 8px rgba(0,0,0,.5)}
