/* swgame.css · 4관 「소프트웨어 계속 살 건가요?」 고르기(client/swgame.js) */
#swBtn{position:absolute;left:50%;bottom:calc(var(--cuebar-h,0px) + 132px);transform:translateX(-50%);z-index:32;white-space:nowrap;font:inherit;font-size:20px;font-weight:900;color:#f3f4f1;background:#1e6b4b;border:3px solid #121417;border-radius:999px;padding:12px 28px;min-height:52px;cursor:pointer;pointer-events:auto;touch-action:manipulation;box-shadow:0 4px 0 #121417}
#swBtn.swCd{background:#4a5260}
body.chat-side.chat-open #swBtn{left:calc((100vw - var(--panel-w) - 16px) / 2)}
#swCard{position:absolute;left:16px;top:130px;z-index:45;width:min(420px,calc(100vw - 32px));max-height:calc(var(--vh,100vh) - 130px - 130px);display:flex;flex-direction:column;pointer-events:auto;background:rgba(246,244,238,.98);border:2px solid #121417;border-radius:16px;box-shadow:0 12px 40px rgba(18,20,23,.35);overflow:hidden;font-size:15px}
#swCard .swHead{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 16px;background:#1e6b4b;color:#fff}
#swCard .swTitle{font-size:17px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
#swCard .swTime{margin-left:auto;font-size:16px;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}
#swCard .swScore{font-size:13px;font-weight:800;color:#cfe9da;white-space:nowrap}
#swCard .swX{font:inherit;font-size:18px;font-weight:900;width:44px;height:44px;border:0;border-radius:10px;background:rgba(255,255,255,.16);color:#fff;cursor:pointer;flex:none}
#swCard .swBar{height:6px;background:#d9e6de}
#swCard .swBar i{display:block;height:100%;width:0;background:#4caf7d;transition:width .25s linear}
#swCard .swBody{padding:12px 16px 14px;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
#swCard .swRule{margin:0 0 8px;color:#545a61;font-size:13px;font-weight:700;line-height:1.45;word-break:keep-all}
#swCard .swNo{font-size:13px;font-weight:800;color:#1e6b4b}
#swCard .swName{margin:2px 0 10px;font-size:24px;font-weight:900;line-height:1.3;word-break:keep-all}
#swCard .swRes{padding:8px 10px;border-radius:10px;font-size:14px;line-height:1.45;word-break:keep-all}
#swCard .swRes b{display:block;margin-bottom:2px}
#swCard .swRes.ok{background:#e1f5e9;color:#14502f}
#swCard .swRes.no{background:#ffe7dc;color:#7a2a08}
#swCard .swSum{font-size:22px;font-weight:900;margin:2px 0 8px}
#swCard .swNote{margin:0 0 8px;font-size:13px;color:#545a61;font-weight:700}
#swCard .swFact{margin:0 0 8px;padding:8px 10px;border-left:4px solid #b8501c;background:#fff;font-size:14px;line-height:1.5;word-break:keep-all}
#swCard .swPledge{margin:0 0 10px;font-size:15px;font-weight:800;line-height:1.5;color:#0f3d2a;word-break:keep-all}
#swCard .swLink{display:flex;align-items:center;justify-content:center;min-height:48px;margin-bottom:10px;border:2px solid #121417;border-radius:14px;background:#ffd23f;color:#121417;font-weight:900;font-size:16px;text-decoration:none}
#swCard .swLog{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}
#swCard .swLog li{padding:6px 8px;border-radius:8px;background:#fff;font-size:13px;line-height:1.45;word-break:keep-all}
#swCard .swLog li b{display:block}
#swCard .swLog li.ok b{color:#14502f}
#swCard .swLog li.no b{color:#a33a0c}
#swCard .swRow{display:flex;gap:8px}
#swCard .swRow button{flex:1;min-height:48px;font:inherit;font-size:16px;font-weight:900;border:2px solid #121417;border-radius:14px;background:#fff;color:#121417;cursor:pointer;touch-action:manipulation}
#swCard .swRow .swAgain{background:#4caf7d}
#swCard .swRow button:disabled{opacity:.55;cursor:default}
#swPick{position:absolute;left:50%;bottom:calc(var(--cuebar-h,0px) + 24px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:46;display:flex;gap:12px;width:min(520px,calc(100vw - 24px));pointer-events:auto}
body.chat-side.chat-open #swPick{left:calc((100vw - var(--panel-w) - 16px) / 2);width:min(520px,calc(100vw - var(--panel-w) - 40px))}
#swPick button{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2;word-break:keep-all;padding:6px 8px;gap:8px;min-height:68px;font:inherit;font-size:20px;font-weight:900;border:3px solid #121417;border-radius:16px;cursor:pointer;touch-action:manipulation;box-shadow:0 4px 0 #121417;color:#fff}
#swPick .swMake{background:#1e6b4b}
#swPick .swKeep{background:#4a5260}
#swPick button:disabled{opacity:.6;box-shadow:none;transform:translateY(3px)}
#swPick kbd{font:inherit;font-size:13px;font-weight:900;color:#121417;background:#f3f4f1;border-radius:6px;padding:1px 7px}
@media (max-width:700px),(pointer:coarse){
  #swBtn{bottom:calc(var(--drawer-h,0px) + var(--cuebar-h,0px) + 150px + env(safe-area-inset-bottom));font-size:18px}
  #swCard{left:50%;transform:translateX(-50%);width:min(460px,calc(100vw - 32px));top:calc(56px + env(safe-area-inset-top));max-height:calc(var(--vh,100vh) - 56px - env(safe-area-inset-top) - 112px - var(--drawer-h,0px) - var(--cuebar-h,0px) - env(safe-area-inset-bottom))}
  #swCard .swName{font-size:21px;margin-bottom:8px}
  #swCard .swBody{padding:10px 14px 12px}
  #swCard .swRes{font-size:13px;padding:6px 9px}
  #swPick{bottom:calc(var(--drawer-h,0px) + var(--cuebar-h,0px) + 14px + env(safe-area-inset-bottom));gap:10px}
  #swPick button{min-height:72px;font-size:19px}
  #swPick kbd{display:none}
}
@media (max-height:420px){
  #swCard{top:8px;max-height:calc(var(--vh,100vh) - 8px - 96px);width:min(420px,calc(100vw - 32px))}
  #swCard .swName{font-size:19px;margin-bottom:6px}
  #swPick button{min-height:60px}
}
@media (max-width:360px){
  #swCard .swHead{gap:6px;padding-left:12px}
  #swCard .swTitle{font-size:15px}
  #swCard .swScore{font-size:12px}
  #swPick button{font-size:17px}
}
