/* ★[IPW] 261105 인페이지 회원 — 멘트업 로그인 화면 · [회원] 창과 같은 모양 */
.hbtn[hidden]{display:none!important}
body.ipl-on{overflow:hidden}
body.ipl-on>header,body.ipl-on>main,body.ipl-on>footer{display:none!important}
.ipl{position:fixed;inset:0;z-index:80;background:#fff;overflow-y:auto;color:#1c1c1a;font-size:16px;line-height:1.65;word-break:keep-all}
.ipl[hidden]{display:none}
.ipl .card{max-width:400px;margin:0 auto;padding:24px 24px;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}
.ipl h1{font-size:36px;letter-spacing:-.03em;margin:0 0 6px;line-height:1.25}
.ipl h1 a{color:inherit;text-decoration:none}
.ipl .lead2{margin:0 0 18px}
.ipl .hint,.mpf .hint{color:#6b6a66;font-size:12px}
.ipl .lead2.hint{font-size:14px}
.ipl .f{margin-bottom:20px}
.ipl .f[hidden]{display:none}
.ipl .f label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}
.ipl .f label em{font-style:normal;color:#6b6a66;font-weight:400;font-size:12px;margin-left:4px}
.ipl .f input{width:100%;height:48px;padding:0 14px;border:1px solid #e6e5e1;border-radius:12px;background:#fff;font:inherit;font-size:15.5px;box-sizing:border-box}
.ipl .f input:focus{outline:none;border-color:#1c1c1a}
.ipl .f input[readonly]{background:#f6f6f5;color:#6b6a66}
.ipl input::placeholder{color:#bbb}
.ipl .btn{display:flex;align-items:center;justify-content:center;width:100%;height:48px;border-radius:12px;padding:0 22px;font-size:15.5px;font-weight:600;border:1px solid #1c1c1a;background:#1c1c1a;color:#fff;cursor:pointer;text-decoration:none;box-sizing:border-box;margin:0}
.ipl .btn.line{background:#fff;color:#1c1c1a;border-color:#e6e5e1}
.ipl .btn.line:hover{border-color:#1c1c1a}
.ipl .btn:disabled{opacity:.5;cursor:default}
.ipl .gbtn{gap:8px;margin-top:10px}
.ipl .gbtn.gtop{margin:0 0 6px}
.ipl .gbtn svg{flex:none}
.ipl [data-gl][hidden]{display:none}
.ipl .gor{text-align:center;color:#a8a7a1;font-size:13px;margin:6px 0 14px}
.ipl .msg{min-height:22px;font-size:14px;margin-top:10px;white-space:pre-line}
.ipl .msg.err,.mpf .err{color:#c62828}
.ipl .msg.ok{color:#1f8a4c}
.ipl .lsw{margin:18px 0 0;text-align:center;font-size:14px;color:#6b6a66}
.ipl .lsw a{color:#1c1c1a;font-weight:600;text-decoration:none}
.ipl .lsep{margin:0 10px;color:#e6e5e1}
.ipl form[hidden]{display:none}
.ipl .agb{border:1px solid #e6e5e1;border-radius:12px;padding:14px 16px;margin:4px 0 16px;display:flex;flex-direction:column;gap:10px}
.ipl .agb label{display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height:1.45;cursor:pointer}
.ipl .agb label input{margin-top:3px;flex:none}
.ipl .agb label a{color:#6b6a66;margin-left:auto;font-size:12px;white-space:nowrap}
.ipl .agb label em{font-style:normal;color:#6b6a66;font-size:12px;margin-left:4px}
.ipl .agb .agall{font-weight:700;padding-bottom:10px;border-bottom:1px solid #e6e5e1}
.ipl .lfoot{max-width:760px;margin:0 auto;padding:0 16px 32px;text-align:center;font-size:12px;color:#8a8984;line-height:1.8}
.ipl .lfoot a{color:#8a8984}
/* [회원] 창 */
.mpf{position:fixed;right:16px;top:60px;width:320px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid #e6e5e1;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.12);padding:16px;z-index:70;box-sizing:border-box;font-size:14px;color:#1c1c1a;line-height:1.5}
.mpf[hidden]{display:none}
.mpf-me{display:flex;align-items:center;gap:12px;padding-bottom:10px;margin-bottom:4px;border-bottom:1px solid #e6e5e1}
.mpf-img{width:48px;height:48px;border-radius:50%;background:#efeee9;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#6b6a66;flex:none}
.mpf-nm{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.mpf-nm b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mpf-nm .hint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mpf-x{border:0;background:none;font-size:22px;line-height:1;color:#8a8984;cursor:pointer;padding:4px 6px}
.mpf .dvr{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0efeb}
.mpf .dl{width:56px;flex:none;color:#6b6a66}
.mpf .dv{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.mpf .dinf{display:block}
.mpf .btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid #1c1c1a;background:#1c1c1a;color:#fff;font-weight:600;cursor:pointer;font-size:14px;height:40px;padding:0 16px;box-sizing:border-box;margin:0}
.mpf .btn.sm{height:30px;padding:0 12px;font-size:12px;flex:none}
.mpf .btn.line{background:#fff;color:#1c1c1a;border-color:#e6e5e1}
.mpf .btn.danger{background:#c0392b;border-color:#c0392b}
.mpf .acf{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0;border-bottom:1px solid #f0efeb}
.mpf .acf input{width:100%;height:40px;padding:0 12px;border:1px solid #e6e5e1;border-radius:10px;font:inherit;box-sizing:border-box}
.mpf .acf .btn{width:100%}
.mpf .acf .msg{width:100%;font-size:12px;white-space:pre-line}
.mpf .acf .msg:empty{display:none}
.mpf .acl{margin:10px 0 0;text-align:right;font-size:12px}
.mpf .acl a{color:#8a8984}
.mpf-mkt{border-top:1px solid #e6e5e1;margin-top:10px;padding:12px 0 4px}
.mpf-mkt .agree{display:flex;align-items:center;gap:8px;font-weight:600;cursor:pointer}
.mpf-b{position:sticky;bottom:-16px;background:#fff;padding:12px 0 16px;margin-bottom:-16px;border-top:1px solid #e6e5e1}
.mpf-b .btn{width:100%}
#ipw_toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#1c1c1a;color:#fff;padding:10px 18px;border-radius:999px;font-size:14px;opacity:0;transition:.2s;z-index:90;pointer-events:none}
#ipw_toast.on{opacity:1;transform:translate(-50%,0)}
#ipw_toast.err{background:#c62828}
button.hbtn{font-family:inherit;cursor:pointer}
.ipadm .adw{max-width:1080px;margin:0 auto;padding:16px 24px 48px}
.ipadm .adh{display:flex;align-items:center;gap:12px;padding:8px 0 16px;border-bottom:1px solid #1c1c1a;margin-bottom:16px}
.ipadm .adh h1{font-size:24px;margin:0}
.ipadm .adt{font-size:14px;font-weight:600;color:#6b6a66}
.ipadm .adh .btn{width:auto;height:34px;border-radius:999px;font-size:13.5px;margin-left:auto}
.ipadm .adl{overflow-x:auto}
.ipadm table{width:100%;border-collapse:collapse;font-size:14px;white-space:nowrap}
.ipadm th{text-align:left;font-weight:600;color:#6b6a66;font-size:12px;padding:8px 10px;border-bottom:1px solid #e6e5e1}
.ipadm td{padding:10px;border-bottom:1px solid #f0efeb}

/* ★[STATS] 261108 관리자 [통계] */
.sx-bar{display:flex;align-items:center;gap:12px;margin:0 0 18px;flex-wrap:wrap}
.sx-seg{display:inline-flex;border:1px solid #ddd;border-radius:999px;overflow:hidden}
.sx-seg button{border:0;background:#fff;color:#555;font:inherit;font-size:14px;height:33px;min-width:64px;padding:0 14px;cursor:pointer}
.sx-seg button.on{background:#111;color:#fff;font-weight:600}
.sx-up{color:#888;font-size:13px}
.sx-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:0 0 14px}
.sx-c{border:1px solid #e6e6e6;border-radius:12px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:4px;min-width:0}
.sx-c span{font-size:13px;color:#666}.sx-c span i{font-style:normal;color:#aaa;font-size:12px}
.sx-c b{font-size:26px;font-weight:700;line-height:1.2;color:#111}
.sx-c em{font-style:normal;font-size:12px;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sx-kpi{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border:1px solid #e6e6e6;border-radius:12px;margin:0 0 14px}
.sx-kpi div{padding:12px 14px;border-left:1px solid #eee;display:flex;flex-direction:column;gap:2px;min-width:0}
.sx-kpi div:first-child{border-left:0}
.sx-kpi span{font-size:12px;color:#777}.sx-kpi b{font-size:18px;color:#111}
.sx-box{border:1px solid #e6e6e6;border-radius:12px;padding:14px 16px;min-width:0}
.sx-wide{margin:0 0 14px}
.sx-box h4{margin:0 0 10px;font-size:15px;font-weight:700;color:#111}
.sx-box h4 em{font-style:normal;font-weight:400;font-size:12px;color:#888;margin-left:6px}
.sx-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 14px}
.sx-r{display:grid;grid-template-columns:minmax(0,38%) 1fr 46px 38px;align-items:center;gap:8px;font-size:13px;padding:3px 0}
.sx-k{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#333}
.sx-b{height:8px;background:#f2f2f2;border-radius:4px;overflow:hidden}.sx-b i{display:block;height:100%;background:#111;border-radius:4px}
.sx-n{text-align:right;color:#111;font-variant-numeric:tabular-nums}.sx-p{text-align:right;color:#999;font-size:12px}
.sx-none{color:#aaa;font-size:13px;margin:4px 0}
.sx-chw{width:100%}.sx-ch{width:100%;height:190px;display:block}
.sx-gl{stroke:#f0f0f0;stroke-width:1}.sx-v{fill:#c9c9c9}.sx-m{fill:#111}.sx-s{fill:#e5484d}
.sx-tx{font-size:10px;fill:#999;text-anchor:middle}
.sx-lg{display:inline-block;width:10px;height:10px;border-radius:2px;margin:0 4px 0 10px;vertical-align:-1px}
.sx-lg.v{background:#c9c9c9}.sx-lg.m{background:#111}.sx-lg.s{background:#e5484d;border-radius:50%}
.sx-fn{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.sx-fn div{display:flex;flex-direction:column;align-items:center;min-width:110px;padding:10px 12px;border-radius:10px;background:#f7f7f7}
.sx-fn b{font-size:22px;color:#111}.sx-fn span{font-size:12px;color:#666;text-align:center}.sx-fn i{font-style:normal;color:#bbb;font-size:18px}
.sx-t{width:100%;border-collapse:collapse;font-size:13px}
.sx-t th{font-weight:600;color:#666;text-align:left;padding:7px 8px;border-bottom:1px solid #e6e6e6;white-space:nowrap}
.sx-t td{padding:7px 8px;border-bottom:1px solid #f2f2f2;color:#222;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sx-t td em{font-style:normal;color:#888}
.sx-rc tr[data-sxr]{cursor:pointer}.sx-rc tr[data-sxr]:hover td{background:#fafafa}
.sx-rx td{white-space:normal;color:#666;background:#fafafa;font-size:12px}
.sx-tag{display:inline-block;font-size:11px;padding:1px 7px;border-radius:999px;background:#f0f0f0;color:#555}
.sx-tag.m{background:#111;color:#fff}
.sx-hm{border-collapse:separate;border-spacing:2px;width:100%;table-layout:fixed;font-size:11px}
.sx-hm th{color:#999;font-weight:400;text-align:center}.sx-hm tr th:first-child{width:22px}
.sx-hm td{height:18px;background:#f4f4f4;border-radius:3px}.sx-hm td.on{background:#111}
.sx-mb{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.sx-mb div{background:#f7f7f7;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.sx-mb span{font-size:12px;color:#666}.sx-mb b{font-size:20px;color:#111}
@media (max-width:820px){.sx-cards{grid-template-columns:repeat(2,1fr)}.sx-kpi{grid-template-columns:repeat(3,1fr)}
  .sx-kpi div:nth-child(4){border-left:0}.sx-grid{grid-template-columns:1fr}.sx-mb{grid-template-columns:repeat(2,1fr)}
  .sx-box{overflow-x:auto}}

/* ★[STATS] 261108 인페이지 관리자 왼쪽 메뉴 (멘트업과 같은 모양) */
.ipa2{display:flex;gap:48px;align-items:flex-start;margin-top:24px}
.ipa2-nav{width:180px;flex:0 0 180px;display:flex;flex-direction:column;gap:4px;position:sticky;top:20px}
.ipa2-nav button{border:0;background:none;text-align:left;font:inherit;font-size:15px;color:#444;height:46px;padding:0 14px;border-radius:10px;cursor:pointer}
.ipa2-nav button.on{background:#f1f1f1;color:#111;font-weight:700}
.ipa2-body{flex:1;min-width:0}
.ipa2-body h2{font-size:30px;font-weight:800;margin:0 0 18px;padding-bottom:20px;border-bottom:2px solid #111}
@media (max-width:820px){.ipa2{flex-direction:column;gap:14px}.ipa2-nav{position:static;width:auto;flex:none;flex-direction:row}.ipa2-nav button{height:38px}}
/* FS14 261110 인페이지 관리자 글자 14px 통일 (회사홈 기준) · 날짜별 칸·히트맵·축 글자는 그대로 */
.ipadm th,.ipadm .hint,#cai_box .hint,.ipadm #cai_box .hint,.ipadm #cai_box th,.sx-up,.sx-c span,.sx-c span i,.sx-c em,.sx-kpi span,.sx-box h4 em,.sx-r,.sx-p,.sx-none,.sx-fn span,.sx-t,.sx-rx td,.sx-mb span{font-size:14px}
.ipadm .adh .btn{font-size:14px}
.ipl{scrollbar-gutter:stable} /* GUT2 261110 관리자·로그인 창 자체 스크롤에도 자리 고정 */
/* FS15 261110 인페이지 관리자 글자 하나로 통일 = 15px (왼쪽 메뉴와 같게) · 제목·큰 숫자만 크게 */
.ipadm table,.ipadm th,.ipadm td,.ipadm .hint,.ipadm #cai_box,.ipadm #cai_box .hint,.ipadm #cai_box th,.ipadm #cai_box td,.ipadm #cai_box button,.ipadm #cai_box input,.ipadm .sx-seg button,.ipadm .sx-up,.ipadm .sx-c span,.ipadm .sx-c span i,.ipadm .sx-c em,.ipadm .sx-kpi span,.ipadm .sx-box h4 em,.ipadm .sx-r,.ipadm .sx-p,.ipadm .sx-none,.ipadm .sx-fn span,.ipadm .sx-t,.ipadm .sx-rx td,.ipadm .sx-mb span,.ipadm .adt,.ipadm .adh .btn{font-size:15px}

/* UNI2 261110 관리자 윗줄 = 고객 화면 윗줄과 같게 (로고 22 · [홈페이지] = 고객 화면 버튼 크기 · 같은 자리) · 멘트업 관리자와 같은 모양 (대표 05:20) */
html:has(.ipl:not([hidden])){scrollbar-gutter:auto;overflow:hidden}
.ipl{overflow-x:hidden}
.ipadm .adw{padding-top:0}
.ipadm .adh{height:64px;padding:0;margin:0 0 41px;border-bottom:0;position:relative;gap:8px}
.ipadm .adh::after{content:"";position:absolute;left:-100vw;right:-100vw;bottom:-1px;border-bottom:1px solid #e6e5e1}
.ipadm .adh h1{font-size:22px;font-weight:800;letter-spacing:-.03em;line-height:36px}
.ipadm .adh .btn{height:34px;padding:0 14px;font-size:13.5px;font-weight:600}
.ipadm .ipa2-body{overflow-x:auto} /* UNI2 폰: 넓은 표는 본문 안에서만 옆으로 밀기 */
.ipadm .ipa2-body{width:100%;max-width:100%;align-self:stretch}

/* IPAY 구독 요금제 고르기 */
.payr .ipsel{height:32px;padding:0 8px;border:1px solid #e6e5e1;border-radius:8px;font:inherit;font-size:13.5px;background:#fff;max-width:100%}

/* IPAY2 구독 요금제 고르기 — 클로드식 드롭 */
.payr .dv{position:relative}
.ipdd{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border:1px solid #e6e5e1;border-radius:8px;background:#fff;font:inherit;font-size:13.5px;color:#1c1917;white-space:nowrap;cursor:pointer}
.ipdd::after{content:"";width:6px;height:6px;border-right:1.5px solid #a8a29e;border-bottom:1.5px solid #a8a29e;transform:translateY(-2px) rotate(45deg)}
.ipdd:hover{border-color:#d6d3cd}
.ipmenu{position:absolute;z-index:60;top:calc(100% + 6px);left:0;min-width:220px;padding:6px;background:#fff;border:1px solid #ebe9e4;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.ipmenu[hidden]{display:none}
.ipmenu button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;height:42px;padding:0 12px;border:0;border-radius:8px;background:none;font:inherit;font-size:14px;color:#1c1917;cursor:pointer;text-align:left}
.ipmenu button b{font-weight:500}
.ipmenu button span{color:#8a857f;font-size:13px}
.ipmenu button:hover{background:#f5f4f1}
.ipmenu button.on{background:#f5f4f1}
.ipmenu button.on b::after{content:"  \2713";color:#1c1917}
.payr .dv{overflow:visible!important}

/* ★[QUOTA] 261111 공간 막대 */
.qbar{display:inline-block;width:90px;height:7px;border-radius:4px;background:#e7e5e0;vertical-align:middle;overflow:hidden;margin-right:4px}
.qbar i{display:block;height:100%;background:#1c1917;border-radius:4px}
.qbar i.hot{background:#c2410c}
.qsite{font:inherit;font-size:12px;padding:2px 4px;border:1px solid #ddd;border-radius:6px;background:#fff}
