.aj{--ac:#047857;--ac2:#34D399;--acg:linear-gradient(90deg,#047857,#10B981 55%,#84CC16)}
.ghero{position:relative;text-align:center;padding:5svh 0 18px}
.aj .o1{background:#6EE7B7}.aj .o2{background:#A3E635;opacity:.28}
.game{position:relative;background:#fff;border-radius:28px;padding:16px;box-shadow:0 1px 2px rgba(14,17,22,.05),0 20px 50px rgba(4,120,87,.14);overflow:hidden}
.gtop{margin-bottom:12px}
.ghud{display:flex;justify-content:space-between;gap:6px;font-size:12px;font-weight:800;color:var(--ink2);white-space:nowrap}.ghud b{font-size:16px;font-variant-numeric:tabular-nums}
.tbar{height:6px;border-radius:99px;background:#EEF0F4;margin-top:10px;overflow:hidden}.tbar i{display:block;height:100%;width:100%;border-radius:99px;background:linear-gradient(90deg,#047857,#84CC16)}.tbar i.hot{background:#EF4444}
.il{margin:0 0 10px;font-size:13.5px;font-weight:800;color:#065F46;line-height:1.6}
.jobs{display:flex;flex-wrap:wrap;gap:7px;max-height:212px;overflow:auto;padding:2px;margin:0 -2px}
.jobs button{flex:none;height:40px;padding:0 13px;border-radius:999px;border:0;background:#F1F5F4;box-shadow:inset 0 0 0 1.5px #D9E7E1;font:inherit;font-size:14px;font-weight:800;color:var(--ink);cursor:pointer;transition:transform .15s,background .2s}
.jobs button:active{transform:scale(.95)}.jobs button[aria-checked=true]{background:var(--ink);color:#fff;box-shadow:none}
.jobs button.any{background:#ECFDF5;box-shadow:inset 0 0 0 1.5px #6EE7B7;color:#065F46}.jobs button.any[aria-checked=true]{background:#047857;color:#fff}
.ld{margin:0;font-size:13px;color:var(--mut)}
.go{display:block;width:100%;height:60px;margin-top:14px;border:0;border-radius:999px;background:var(--acg);color:#fff;font:inherit;font-size:17px;font-weight:900;cursor:pointer;box-shadow:0 12px 26px rgba(4,120,87,.3);transition:transform .15s}.go:active{transform:scale(.97)}.go:disabled{opacity:.4}
.hint{margin:8px 0 0;text-align:center;font-size:11.5px;color:var(--mut);line-height:1.6}.hint[hidden]{display:none}
#play[hidden],#intro[hidden]{display:none}
/* 作業カード */
.tcard{position:relative;border-radius:22px;padding:16px 16px 14px;background:linear-gradient(160deg,#052E22,#0B1F1A);color:#ECFDF5;min-height:132px;overflow:hidden}
.tcard:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(110,231,183,.12),transparent);transform:translateX(-100%);pointer-events:none}
.tcard.in:after{animation:scan 1s var(--ease)}@keyframes scan{to{transform:translateX(100%)}}
.tj{display:inline-flex;align-items:center;gap:6px;margin:0;padding:3px 10px;border-radius:999px;background:rgba(52,211,153,.16);font-size:11.5px;font-weight:800;color:#6EE7B7}
.tq{margin:10px 0 6px;font-size:clamp(21px,6vw,26px);font-weight:900;line-height:1.4;letter-spacing:-.01em;word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance;color:#fff}
.ten{margin:0;font-size:11px;line-height:1.5;color:#86A89B}
.tcard.in .tq{animation:pop .4s var(--ease)}
/* メーター */
.gauge{position:relative;max-width:300px;margin:10px auto 0}
.gauge svg{display:block;width:100%;height:auto;overflow:visible}
.seg{fill:none;stroke-width:16;stroke-linecap:butt;transition:opacity .3s,stroke-width .3s}
.s0{stroke:#CBD5E1}.s1{stroke:#93C5FD}.s2{stroke:#34D399}.s3{stroke:#047857}
.gauge.pick .seg{opacity:.28}.gauge.pick .seg.me{opacity:1;stroke-width:22}
.gauge text{font-size:10px;font-weight:800;fill:#94A3B8}
.ndl{transform-origin:120px 120px;transform:rotate(-90deg);transition:transform 1.25s cubic-bezier(.3,1.5,.5,1)}
.ndl line{stroke:#0F172A;stroke-width:4;stroke-linecap:round}.ndl circle{fill:#0F172A}
.gauge.idle .ndl{animation:wob 2.4s ease-in-out infinite}@keyframes wob{0%,100%{transform:rotate(-70deg)}50%{transform:rotate(70deg)}}
.gv{margin:6px 0 0;text-align:center;line-height:1;display:flex;align-items:baseline;justify-content:center;gap:6px}.gv b{font-size:30px;font-weight:900;color:var(--ink);font-variant-numeric:tabular-nums}.gv small{font-size:10px;font-weight:800;color:var(--mut)}
/* 4段階ボタン */
.lv{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:16px}
.lv button{display:flex;flex-direction:column;align-items:center;gap:1px;padding:9px 2px 8px;border:0;border-radius:18px;background:#F1F5F4;box-shadow:inset 0 0 0 1.5px #D9E7E1;font:inherit;cursor:pointer;color:var(--ink);transition:transform .15s,background .2s,opacity .2s}
.lv button span{font-size:24px;line-height:1.2}.lv button b{font-size:13.5px;font-weight:900;white-space:nowrap}.lv button small{font-size:10px;color:var(--mut);font-weight:700;white-space:nowrap}
.lv button:active{transform:scale(.95)}.lv button:hover{box-shadow:inset 0 0 0 2px var(--ac2)}
.lv button:disabled{cursor:default;opacity:.4}.lv button.me{opacity:1;background:var(--ink);color:#fff;box-shadow:none}.lv button.me small{color:#B9BCCB}
.lv button.ans{opacity:1;box-shadow:inset 0 0 0 3px #10B981}
.stamp{position:absolute;right:10px;top:10px;z-index:3;padding:1px 10px;border:3px solid;border-radius:10px;font-size:15px;font-weight:900;background:rgba(255,255,255,.96);transform:rotate(-6deg);animation:stp .45s var(--ease);white-space:nowrap}
.stamp.g{color:#059669;border-color:#059669}.stamp.y{color:#D97706;border-color:#D97706}.stamp.r{color:#DC2626;border-color:#DC2626}
@keyframes stp{0%{transform:scale(2.2) rotate(-20deg);opacity:0}60%{transform:scale(.92) rotate(-4deg);opacity:1}100%{transform:rotate(-6deg)}}
.res{margin-top:12px;border-radius:16px;padding:14px;font-size:13px;line-height:1.75;animation:pop .35s}.res[hidden]{display:none}
.res.right{background:#ECFDF5}.res.mid{background:#FFFBEB}.res.wrong{background:#FEF2F2}
.res b{display:block;font-size:16px}.res.right b{color:#059669}.res.mid b{color:#B45309}.res.wrong b{color:#DC2626}
.res p{margin:6px 0 0;color:var(--ink2)}.res .lb{display:block;font-size:11px;font-weight:800;color:var(--ac);margin-bottom:2px}
.res .nx{display:block;width:100%;margin-top:12px;height:52px;border:0;border-radius:999px;background:var(--ink);color:#fff;font:inherit;font-size:16px;font-weight:900;cursor:pointer}
.combo{position:absolute;left:50%;top:30%;transform:translateX(-50%);z-index:6;font-size:clamp(22px,7vw,30px);font-weight:900;color:#059669;text-shadow:0 2px 0 #fff,0 4px 14px rgba(5,150,105,.35);pointer-events:none;white-space:nowrap;animation:combo 1.1s var(--ease) forwards}
@keyframes combo{0%{opacity:0;transform:translate(-50%,10px) scale(.7)}25%{opacity:1;transform:translate(-50%,0) scale(1.08)}75%{opacity:1}100%{opacity:0;transform:translate(-50%,-24px)}}
.game.shake{animation:shk .45s}@keyframes shk{20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}
.end{margin-top:4px;animation:pop .4s var(--ease)}.end[hidden]{display:none}
.vs{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:12px 0 0;padding:10px 12px;border-radius:12px;background:#F7F8FB;font-size:13px;font-weight:700;text-align:center;color:var(--ink2)}.vs span{white-space:nowrap}.vs b{color:var(--ink)}
.bias{margin:12px 0 0;padding:12px 14px;border-radius:16px;background:linear-gradient(135deg,#ECFDF5,#F7FEE7);text-align:left;font-size:13px;line-height:1.7;color:var(--ink2)}.bias b{display:block;font-size:16px;color:#065F46}
.myjob{margin:12px 0 0;padding:12px 14px;border-radius:16px;background:#F7F8FB;text-align:left;font-size:13px;line-height:1.7;color:var(--ink2)}.myjob b{color:var(--ink)}
.rvw{display:grid;grid-template-columns:26px 1fr;gap:2px 10px;padding:13px 0;border-bottom:1px solid #F1F5F9}.rvw:last-child{border-bottom:0}.rvw .mk{font-size:17px;line-height:1.4}
.rvw b{font-size:14px;line-height:1.5}.rvw small{display:block;font-size:11.5px;color:var(--mut);font-weight:700}
.rvw .ln{grid-column:2;position:relative;height:8px;margin:12px 0 4px;border-radius:99px;background:linear-gradient(90deg,#CBD5E1 0 20%,#93C5FD 20% 40%,#34D399 40% 60%,#047857 60%)}
.rvw .ln i{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#0F172A;box-shadow:0 0 0 2.5px #fff}
.rvw .ln em{position:absolute;bottom:9px;margin-left:-7px;font-style:normal;font-size:12px;line-height:1;color:#0F172A}
.rvw p{grid-column:2;margin:0;font-size:12px;color:var(--ink2);line-height:1.6}
.tips{margin:0;padding-left:1.3em;color:#C9CCD6;font-size:14px;line-height:1.8}.tips li{margin:0 0 12px}.tips b{display:block;color:#fff}
.mt0{margin:0 0 6px;font-size:13px;color:var(--ink2);line-height:1.75}
.ctap{color:#C9CCD6;font-size:14px;margin:0 0 16px;line-height:1.75}.cta-c h3{color:var(--ac2)}
#revc[hidden],#sharec[hidden]{display:none}
.again2{display:block;width:100%;margin-top:12px}
@media(max-width:360px){.game{padding:12px}.ghud{gap:4px;font-size:10.5px;letter-spacing:-.02em}.ghud b{font-size:14px}.lv{gap:5px}.lv button b{font-size:12px}.lv button span{font-size:21px}.tq{font-size:19px}}
@media(prefers-reduced-motion:reduce){.gauge.idle .ndl{animation:none}.ndl{transition:none}}
.aj .sbd-r{word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance}
.aj .sub{text-wrap:pretty}
.ctap,.tips b,.tips li,.ft .srcs,.rvw small,.rvw b,.mt0,.fb p,.sbd-m,.hint,.il{text-wrap:pretty}
