/* KG-APP-BASE v1.0 공용 모양 — 네이비 #0D1B3E · 골드 #C9923A · 크림 #FBF1E3 · 크림슨 #C8102E 만. 글씨 13px 이상, 누르는 것 44px 이상 */
.kg-ib{flex:0 0 auto;width:44px;height:44px;display:inline-grid;place-items:center;border-radius:12px;background:transparent;color:#0D1B3E;border:0;cursor:pointer}
.kg-ib svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.kg-ib:active{background:#FBF1E3}
.kg-ib[hidden]{display:none}
.kg-foot{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;padding:0 4px;background:none;border:0;font-size:13px;color:inherit;text-decoration:underline;cursor:pointer}
.kg-sh{position:fixed;inset:0;z-index:90;background:rgba(13,27,62,.55);display:flex;align-items:flex-end;justify-content:center}
.kg-b{box-sizing:border-box;width:100%;max-width:520px;max-height:88vh;overflow:auto;background:#fff;border-radius:20px 20px 0 0;padding:20px 16px calc(18px + env(safe-area-inset-bottom));color:#0D1B3E;word-break:keep-all;overflow-wrap:anywhere}
.kg-b h2{font-size:21px;margin:0 0 12px}.kg-b h3{font-size:16px;margin:18px 0 8px}
.kg-b p{font-size:16px;line-height:1.55;margin:0 0 12px;color:#374151}
.kg-row{padding:10px 0;border-bottom:1px solid #EEF1F6}.kg-row>b{display:block;font-size:15px;margin-bottom:8px}
.kg-opts{display:flex;flex-wrap:wrap;gap:8px}
.kg-opt{min-height:44px;padding:0 14px;border-radius:999px;border:1.5px solid #D3D8EA;background:#fff;color:#0D1B3E;font-size:15px;font-weight:600;cursor:pointer}
.kg-opt.on{background:#0D1B3E;border-color:#0D1B3E;color:#fff}
.kg-list{display:grid;gap:8px;margin-top:14px}
.kg-btn{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:0 16px;border-radius:12px;border:0;background:#0D1B3E;color:#fff;font-size:16px;font-weight:700;text-decoration:none;cursor:pointer}
.kg-btn.kg-line{background:#fff;color:#0D1B3E;border:1.5px solid #0D1B3E;margin-top:12px}
.kg-list .kg-btn.kg-line{margin-top:0}
.kg-btn.kg-wa{background:#C8102E;margin-top:12px}
.kg-q{display:block;font-size:15px;margin:4px 0 8px}
.kg-in{box-sizing:border-box;width:100%;min-height:48px;margin-top:12px;padding:0 12px;border:1.5px solid #D3D8EA;border-radius:12px;font-size:16px;color:#0D1B3E}
.kg-err{color:#C8102E!important;font-size:14px!important;margin:8px 0 0!important}
.kg-steps{margin:0 0 6px;padding-left:22px;font-size:16px;line-height:1.6}.kg-steps li{margin-bottom:6px}
.kg-ver{font-size:13px!important;color:#6B7280!important;text-align:center;margin-top:14px!important}
.kg-hint{position:fixed;left:50%;bottom:calc(var(--tab,58px) + 70px);transform:translate(-50%,10px);background:#0D1B3E;color:#fff;font-size:14px;padding:10px 16px;border-radius:999px;opacity:0;pointer-events:none;transition:.2s;z-index:95;max-width:90vw;text-align:center}
.kg-hint.on{opacity:1;transform:translate(-50%,0)}
.kg-upd{position:fixed;left:8px;right:8px;bottom:calc(var(--tab,58px) + 10px + env(safe-area-inset-bottom));z-index:80;display:flex;align-items:center;gap:10px;background:#0D1B3E;color:#fff;border-radius:14px;padding:8px 8px 8px 14px;font-size:15px;box-shadow:0 6px 20px rgba(13,27,62,.3)}
.kg-upd span{flex:1}.kg-upd .kg-btn{width:auto;min-height:44px;background:#C9923A;color:#0D1B3E}
.kg-inapp{display:flex;align-items:flex-start;gap:8px;background:#FBF1E3;color:#0D1B3E;border-bottom:2px solid #C9923A;padding:10px 8px 10px 14px;font-size:14px;line-height:1.45}
.kg-inapp span{flex:1}.kg-x{width:44px;height:44px;flex:0 0 auto;border:0;background:none;font-size:24px;color:#0D1B3E;cursor:pointer}
html[data-kg-size="1"]{--kg-fs:1.15}html[data-kg-size="2"]{--kg-fs:1.3}
html[data-kg-size] .kg-b p,html[data-kg-size] .kg-steps{font-size:calc(16px*var(--kg-fs))}
.kg-top{position:fixed;right:12px;bottom:calc(var(--tab,58px) + 84px + env(safe-area-inset-bottom));z-index:70;width:48px;height:48px;border-radius:50%;border:0;background:#0D1B3E;color:#fff;display:grid;place-items:center;box-shadow:0 4px 14px rgba(13,27,62,.3);opacity:0;pointer-events:none;transition:opacity .2s}
.kg-top.on{opacity:1;pointer-events:auto}
.kg-top svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.kg-close{display:flex;justify-content:flex-end;margin:6px 0 2px}
.kg-close button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;border:1.5px solid #D3D8EA;background:#fff;color:#0D1B3E;font-size:15px;font-weight:700;cursor:pointer}
.kg-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.kg-lang{flex:0 0 auto;min-height:44px;padding:0 12px;border-radius:12px;border:1.5px solid currentColor;background:transparent;color:inherit;font-size:15px;font-weight:700;cursor:pointer}
.kg-tour{position:fixed;inset:0;z-index:96}
.kg-ring{position:fixed;border-radius:14px;box-shadow:0 0 0 3px #C9923A,0 0 0 9999px rgba(13,27,62,.62);pointer-events:none;transition:all .2s}
.kg-dim{position:fixed;inset:0;background:rgba(13,27,62,.62)}
.kg-bub{position:fixed;left:12px;right:12px;max-width:420px;margin:0 auto;background:#fff;color:#0D1B3E;border-radius:16px;padding:14px 14px 12px;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.kg-bub p{font-size:17px;line-height:1.5;margin:6px 0 12px;font-weight:600}
.kg-n{font-size:13px;color:#8A6420;font-weight:700}
.kg-bub .kg-opts{justify-content:flex-end}.kg-bub .kg-nx{width:auto;min-width:120px}
