/* 広場の WePlay 化・第2陣（2026-09-29）: すぐ遊ぶ・やり込みレベル・広場のログインボーナス（js/cm-wave2.js） */

/* ---- すぐ遊ぶ ---- */
.w2qm{margin:12px 0 14px}
.w2qm__go{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:12px 16px;border:none;border-radius:18px;cursor:pointer;font-family:inherit;text-align:left;color:#fff;
	background:linear-gradient(135deg,#ff8a3d 0%,#f0508e 55%,#8b6cc1 100%);box-shadow:0 8px 22px rgba(240,80,142,.28),inset 0 -3px 0 rgba(0,0,0,.08);position:relative;overflow:hidden}
.w2qm__go::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);animation:w2shine 3.2s ease-in-out infinite}
@keyframes w2shine{0%,60%{left:-60%}100%{left:130%}}
.w2qm__go:active{transform:translateY(1px) scale(.99)}
.w2qm__i{flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;font-size:22px}
.w2qm__b{display:flex;flex-direction:column;gap:2px;min-width:0}
.w2qm__b b{font-size:18px;font-weight:900;letter-spacing:.04em;line-height:1.2}
.w2qm__b small{font-size:11.5px;font-weight:700;opacity:.95;line-height:1.5}
.w2qm__live{margin:7px 2px 0;font-size:12px;font-weight:800;color:#2f9e77}
.w2qm__mini{flex:0 0 auto;background:linear-gradient(135deg,#ff8a3d,#f0508e);color:#fff;font-weight:900;font-size:12px;padding:9px 12px;border-radius:999px;border:none;cursor:pointer;font-family:inherit;margin-right:6px}
.bt__mk{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.w2qm__cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin:9px 0 0;border:2px solid #f0508e;background:#fff;color:#d43d7c;font-weight:900;font-size:14px;border-radius:999px;cursor:pointer;font-family:inherit}
.w2-fab{position:fixed;right:max(12px,calc(50% - 308px));bottom:74px;z-index:890;display:flex;align-items:center;gap:5px;padding:0 16px 0 13px;height:44px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;
	font-size:14px;font-weight:900;color:#fff;background:linear-gradient(135deg,#ff8a3d,#f0508e 60%,#8b6cc1);box-shadow:0 6px 18px rgba(240,80,142,.35)}
.w2-fab span{font-size:17px}
.w2-fab-sp{height:60px}
.w2-qmo{position:fixed;inset:0;z-index:9990;background:rgba(40,20,50,.45);display:flex;align-items:center;justify-content:center;padding:16px}
.w2-qmo__in{background:#fff;border-radius:22px;padding:22px 26px;text-align:center;min-width:240px;max-width:340px;box-shadow:0 14px 40px rgba(40,20,50,.3)}
.w2-qmo__dice{display:inline-block;font-size:40px;animation:w2roll .9s ease-in-out infinite}
@keyframes w2roll{0%{transform:rotate(0) translateY(0)}50%{transform:rotate(180deg) translateY(-8px)}100%{transform:rotate(360deg) translateY(0)}}
.w2-qmo__t{margin:8px 0 2px;font-size:15px;font-weight:900;color:#3a2a45}
.w2-qmo__s{margin:0;font-size:11.5px;color:#8b7f95}

/* ---- 知らせ ---- */
.w2-toasts{position:fixed;left:50%;top:max(64px,calc(env(safe-area-inset-top,0px) + 58px));transform:translateX(-50%);z-index:9997;display:flex;flex-direction:column;gap:6px;pointer-events:none;width:min(92vw,340px)}
.w2-toast{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #f2dcea;border-radius:14px;padding:8px 12px;font-size:13px;font-weight:700;color:#5a2d5f;box-shadow:0 6px 18px rgba(90,45,95,.16);animation:w2in .3s ease-out}
.w2-toast.is-xp{background:linear-gradient(135deg,#eef9ff,#f6efff);border-color:#9fc4f0}
.w2-toast.is-xp b{color:#2d6fc4;font-size:14px}
.w2-toast.is-err{border-color:#f0b35a;background:#fff8ec}
.w2-toast.is-out{opacity:0;transform:translateY(-6px);transition:.35s}
@keyframes w2in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* ---- レベル ---- */
.w2-lv{display:flex;align-items:center;gap:10px;margin:8px 0}
.w2-lv__no{flex:0 0 auto;display:inline-flex;align-items:baseline;gap:1px;padding:4px 11px;border-radius:12px;background:linear-gradient(135deg,#2d6fc4,#6a5ad8);color:#fff;font-weight:900;font-size:20px;line-height:1.1;box-shadow:inset 0 -2px 0 rgba(0,0,0,.15)}
.w2-lv__no small{font-size:11px;font-weight:800;opacity:.9}
.w2-lv__b{flex:1;min-width:0}
.w2-lv__bar{display:block;height:9px;border-radius:99px;background:#e8eef9;overflow:hidden}
.w2-lv__bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#4fb3ff,#6a5ad8);transition:width .6s ease}
.w2-lv__nx{display:block;margin-top:4px;font-size:11.5px;color:#6b6380}
.w2-lv__nx b{color:#2d6fc4}
.w2-lv__o{font-size:11.5px;font-weight:700;color:#6b6380}
.w2-up{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(20,16,50,.5);animation:w2in .25s ease-out;overflow:hidden}
.w2-up.is-out{opacity:0;transition:.3s}
.w2-up__in{position:relative;z-index:2;text-align:center;background:linear-gradient(160deg,#fff,#eef4ff);border-radius:24px;padding:22px 30px 18px;box-shadow:0 18px 50px rgba(20,16,50,.35);animation:w2pop .5s cubic-bezier(.2,1.6,.4,1)}
@keyframes w2pop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
.w2-up__k{margin:0;font-size:13px;font-weight:900;letter-spacing:.2em;color:#6a5ad8}
.w2-up__lv{margin:2px 0 4px;font-size:52px;font-weight:900;line-height:1.05;background:linear-gradient(135deg,#2d6fc4,#b04fd8);-webkit-background-clip:text;background-clip:text;color:transparent}
.w2-up__lv small{font-size:22px}
.w2-up__t{margin:0 0 12px;font-size:12px;color:#6b6380}
.w2-up__ok{border:none;border-radius:999px;background:#6a5ad8;color:#fff;font-weight:900;font-size:14px;padding:9px 30px;cursor:pointer;font-family:inherit}
.w2-up__sp{position:absolute;left:50%;top:50%;width:520px;height:520px;margin:-260px 0 0 -260px;z-index:1;border-radius:50%;
	background:repeating-conic-gradient(from 0deg,rgba(255,236,150,.55) 0deg 8deg,transparent 8deg 22deg);animation:w2spin 6s linear infinite;pointer-events:none;
	-webkit-mask:radial-gradient(circle,#000 30%,transparent 70%);mask:radial-gradient(circle,#000 30%,transparent 70%)}
.w2-up__sp.is-b{animation-direction:reverse;animation-duration:9s;opacity:.6}
@keyframes w2spin{to{transform:rotate(360deg)}}

/* ---- マイページの札 ---- */
.w2-card{background:#fff;border:1.5px solid #dfe6f6;border-radius:16px;padding:13px 14px 12px;margin:14px 0}
.w2-card__h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0 0 4px;font-size:15px;font-weight:800;color:#3d2a5c}
.w2-card__h span{font-size:11px;font-weight:700;color:#8a7f9a}
.w2-ways{margin:6px 0 0;font-size:12.5px;color:#4a3d5c}
.w2-ways summary{cursor:pointer;font-weight:800;color:#2d6fc4;padding:4px 0}
.w2-ways ul{list-style:none;margin:6px 0;padding:0}
.w2-ways li{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px dashed #e6e3ef}
.w2-ways li i{font-style:normal;width:22px;text-align:center}
.w2-ways li span{flex:1;min-width:0}
.w2-ways li b{color:#2d6fc4}
.w2-ways li small{flex:0 0 auto;font-size:11px;color:#8a7f9a;min-width:70px;text-align:right}
.w2-ways p{margin:4px 0 0;font-size:11px;line-height:1.7;color:#8a7f9a}
.w2-lb{margin-top:14px;padding-top:12px;border-top:1.5px solid #f2dcea}
.w2-lb__go{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin:10px 0 0;border:none;border-radius:999px;background:linear-gradient(135deg,#f0508e,#8b6cc1);color:#fff;font-weight:900;font-size:15px;cursor:pointer;font-family:inherit}
.w2-lb__nt{margin:8px 0 0;font-size:11px;line-height:1.7;color:#8a7f9a}

/* ---- 7日のカレンダー ---- */
.w2-cal{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.w2-cal__c{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 3px 6px;border-radius:12px;background:#fdf7fb;border:1.5px solid #f2dcea;text-align:center;min-width:0}
.w2-cal__c.is-big{background:linear-gradient(160deg,#fff7e0,#fde8f2);border-color:#f0c26a}
.w2-cal__c:last-child{grid-column:span 2}
.w2-cal__c.is-now{border-color:#f0508e;box-shadow:0 0 0 2px rgba(240,80,142,.25);animation:w2glow 1.6s ease-in-out infinite}
@keyframes w2glow{50%{box-shadow:0 0 0 5px rgba(240,80,142,.12)}}
.w2-cal__d{font-size:10.5px;font-weight:900;color:#8b6cc1}
.w2-cal__ic{height:34px;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1}
.w2-cal__ic img{width:34px;height:34px;object-fit:contain}
.w2-cal__r{font-size:10.5px;font-weight:800;color:#5a2d5f;line-height:1.35}
.w2-cal__r small{display:block;font-size:9.5px;font-weight:700;color:#b0701a}
.w2-cal__c.is-got .w2-cal__ic,.w2-cal__c.is-got .w2-cal__r,.w2-cal__c.is-got .w2-cal__d{opacity:.5}
.w2-cal__st{position:absolute;left:50%;top:22px;margin-left:-19px;width:38px;height:38px;border-radius:50%;border:2.5px solid #e2466f;color:#e2466f;font-size:15px;font-weight:900;display:flex;align-items:center;justify-content:center;transform:rotate(-14deg);background:rgba(255,255,255,.72)}
.w2-cal__c.is-fresh .w2-cal__st{animation:w2stamp .5s cubic-bezier(.2,1.8,.4,1)}
@keyframes w2stamp{from{transform:scale(2.4) rotate(-30deg);opacity:0}to{transform:scale(1) rotate(-14deg);opacity:1}}

/* ---- ログインボーナスの下シート ---- */
html.w2-lock,html.w2-lock body{overflow:hidden}
.w2-sheet{position:fixed;inset:0;z-index:9995;background:rgba(40,20,50,.45);display:flex;align-items:flex-end;justify-content:center;animation:w2in .2s ease-out}
.w2-sheet.is-out{opacity:0;transition:.25s}
.w2-sheet__in{position:relative;width:100%;max-width:520px;max-height:calc(100dvh - 40px);overflow-y:auto;background:#fff;border-radius:22px 22px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));box-sizing:border-box;animation:w2up .3s ease-out}
@keyframes w2up{from{transform:translateY(40px)}to{transform:none}}
.w2-sheet__x{position:absolute;right:10px;top:8px;width:36px;height:36px;border:none;background:none;font-size:22px;color:#8a7f9a;cursor:pointer}
.w2-sheet__k{margin:0;font-size:11px;font-weight:900;letter-spacing:.12em;color:#f0508e}
.w2-sheet__h{margin:2px 0 4px;font-size:18px;font-weight:900;color:#3a2a45}
.w2-sheet__go{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;margin:12px 0 0;border:none;border-radius:999px;background:linear-gradient(135deg,#ff8a3d,#f0508e 60%,#8b6cc1);color:#fff;font-weight:900;font-size:16px;cursor:pointer;font-family:inherit}
.w2-sheet__go.is-done,.w2-sheet__go[disabled]{background:#efe6f2;color:#a89ab0;cursor:default}
.w2-sheet__got{display:flex;flex-direction:column;gap:6px;margin:12px 0 0}
.w2-got{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:linear-gradient(135deg,#fff7e0,#fde8f2);border:1.5px solid #f0c26a;border-radius:14px;padding:8px 12px;animation:w2pop .45s cubic-bezier(.2,1.6,.4,1)}
.w2-got img{width:40px;height:40px;object-fit:contain}
.w2-got i{font-style:normal;font-size:26px}
.w2-got b{font-size:14px;color:#5a2d5f}
.w2-got b em{font-style:normal;font-size:11px;color:#fff;background:#b04fd8;border-radius:6px;padding:1px 6px;margin-left:4px}
.w2-got small{flex-basis:100%;font-size:11px;color:#8a7f9a;padding-left:50px}
.w2-got.is-ur b em{background:linear-gradient(135deg,#f0508e,#f0b020)}

/* ---- ヘッダーの小さな印 ---- */
.w2-hd{position:relative;flex:0 0 32px;width:32px;height:32px;border:1px solid #f2dcea;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;padding:0;margin-left:2px;cursor:pointer}
.w2-hd i{display:none;position:absolute;right:-3px;top:-3px;width:10px;height:10px;border-radius:50%;background:#f0508e;border:2px solid #fff}
.w2-hd.is-new i{display:block}
.w2-hd.is-new{animation:w2wig 2.4s ease-in-out infinite}
@keyframes w2wig{0%,86%,100%{transform:none}90%{transform:rotate(-10deg)}94%{transform:rotate(9deg)}}

@media (max-width:380px){.w2-cal{gap:5px}.w2-cal__r{font-size:10px}.w2qm__b b{font-size:17px}}
@media (prefers-reduced-motion:reduce){.w2qm__go::after,.w2-up__sp,.w2-hd.is-new,.w2-cal__c.is-now,.w2-qmo__dice{animation:none}}

/* MELAYOUT1007 すぐ遊ぶ: 丸い⚡だけ（52px）・下へ送る間は隠す */
.w2-fab.w2-fab--ico{width:52px;height:52px;padding:0;justify-content:center;gap:0;transition:transform .22s ease,opacity .22s ease}
.w2-fab.w2-fab--ico span{font-size:24px;line-height:1}
.w2-fab[hidden]{display:none}
.w2-fab.w2-fab--ico.is-away{transform:translateY(90px);opacity:0;pointer-events:none}
@media (prefers-reduced-motion:reduce){.w2-fab.w2-fab--ico{transition:none}}
