/* ai.ajamall.kr AI 도구 스타일(인디고 계열, 밝은 테마만). 모바일 우선. 묶음(group)마다 --acc 색만 바뀐다. 밝은 배경만 쓴다(어두운 테마 없음). */
:root{
--bg:#f5f6ff;--bg2:#eef0ff;--bg3:#e3e6ff;--card:#fff;--ink:#1b1b33;--sub:#555a7a;--line:#d9dcf2;--in:#fbfbff;
--slate:#4338ca;--slate2:#312e81;--code:#14122e;--code-ink:#e0e7ff;--code-dim:#a5b4fc;--code-line:#2e2a5e;
--warn:#fff1c2;--err-bg:#fdecea;--err:#a32a1c;--gold:#f5b942;
--mono:ui-monospace,"Cascadia Mono","SF Mono",Consolas,"Liberation Mono",Menlo,monospace;
--font:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;
--acc:#4f46e5;--ac:var(--acc);--acc-d:color-mix(in srgb,var(--acc) 74%,#000);--acc-bg:color-mix(in srgb,var(--acc) 10%,#fff);--on-acc:#fff}
body[data-group="image"]{--acc:#7c3aed}
body[data-group="doc"]{--acc:#0369a1}
body[data-group="audio"]{--acc:#be185d}
body[data-group="text"]{--acc:#0f766e}
body[data-group="video"]{--acc:#b45309}
.mono{font-family:var(--mono)}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;color-scheme:light}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.7;
padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-bottom:env(safe-area-inset-bottom,0px)}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:1120px;margin:0 auto}
:focus-visible{outline:3px solid var(--acc);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--card);color:var(--ink);padding:8px 12px;z-index:50}.skip:focus{left:8px}

/* 맨 위 어두운 띠 + 로고 */
.portal{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap;font-size:13px;color:#e0e7ff;padding:6px 14px;background:var(--slate);border-radius:0 0 12px 12px}
.portal .tag{font-family:var(--mono);font-size:12px;color:#fed7aa}
.portal a{color:#e2e8f0;font-weight:700;padding:4px 0}.portal a:hover{text-decoration:underline}
header.top{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;padding:16px 0}
.logo{font-size:22px;font-weight:800;display:flex;align-items:center;gap:10px;color:var(--ink)}
.logo i{height:38px;padding:0 10px;border-radius:10px;background:var(--slate2);border:1px solid #a5b4fc;display:grid;place-items:center;color:#c7d2fe;font-family:var(--mono);font-style:normal;font-size:15px;font-weight:700;letter-spacing:-.02em}
.logo .cur{font-family:var(--mono);color:var(--acc);margin-left:1px;animation:blink 1.1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
nav.main{display:flex;gap:6px;flex-wrap:wrap}
nav.main a{padding:10px 14px;border-radius:22px;font-size:15px;font-weight:500;min-height:44px;display:inline-flex;align-items:center}
nav.main a.on,nav.main a:hover{background:var(--acc-bg);color:var(--acc-d)}
h1,h2,h3{line-height:1.35;text-wrap:balance}
.crumb{font-size:13px;color:var(--sub);margin-bottom:8px}.crumb a:hover{text-decoration:underline}

/* 홈 */
.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:28px;align-items:center;padding:22px 0 26px}
.hero>*{min-width:0}
.hero h1{font-size:clamp(27px,4.8vw,40px);margin:0 0 14px;font-weight:800}
.hero h1 b{color:var(--acc)}
.hero p{color:var(--sub);margin:0 0 18px;max-width:36em}
.chips{display:flex;gap:8px;flex-wrap:wrap}.chips span{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:5px 12px;font-size:13px;color:var(--sub)}
.chips span.n{font-family:var(--mono);color:var(--acc-d);border-color:var(--acc)}
.term{background:var(--code);border-radius:14px;color:var(--code-ink);font-family:var(--mono);font-size:14px;box-shadow:0 10px 30px rgba(15,23,42,.25);overflow:hidden}
.term .tbar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--code-line);color:var(--code-dim);font-size:12px}
.term .tbar i{width:10px;height:10px;border-radius:50%;background:#475569}.term .tbar i:nth-child(1){background:#f87171}.term .tbar i:nth-child(2){background:#fbbf24}.term .tbar i:nth-child(3){background:#4ade80}.term .tbar span{margin-left:8px}
.term pre{margin:0;padding:14px 16px 18px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75}
.term .p{color:#c7d2fe}.term .o{color:#a5b4fc}.term .c{color:var(--code-dim)}
.term .cur{color:#c7d2fe;animation:blink 1.1s steps(1) infinite}
section.blk{padding:22px 0}
section.blk>h2{font-size:26px;margin:0 0 6px}
section.blk>p.lead{color:var(--sub);margin:0 0 16px}
.search{margin:0 0 14px}
.search label{display:block;font-size:14px;color:var(--sub);margin-bottom:4px}
.sbox{display:flex;align-items:center;gap:8px;background:var(--card);border:1.5px solid var(--line);border-radius:12px;padding:0 10px;min-height:52px}
.sbox:focus-within{border-color:var(--acc);box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 25%,transparent)}
.sbox>span{color:var(--sub);font-size:18px;border:1px solid var(--line);border-radius:6px;padding:0 8px;line-height:26px}
.sbox input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:inherit;font-family:var(--mono);font-size:16px;min-height:48px;outline:none}
.gjump{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 6px}
.gjump a{--a:var(--acc);display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 14px;border-radius:20px;border:1px solid var(--line);background:var(--card);font-size:14px}
.gjump a:hover{border-color:var(--a)}
.gjump i{font-style:normal;font-size:12px;color:#fff;background:var(--a);border-radius:5px;padding:0 6px;line-height:20px}
.grp{margin:24px 0}
.grp h3{display:flex;align-items:center;gap:10px;font-size:21px;margin:0 0 4px;padding-bottom:8px;border-bottom:2px solid var(--a)}
.grp h3 i{font-style:normal;font-size:14px;color:#fff;background:var(--a);border-radius:7px;padding:0 9px;line-height:28px;min-width:34px;text-align:center}
.grp h3 small{font-size:13px;color:var(--sub);font-weight:400}
.grp .gd{margin:8px 0 14px;color:var(--sub);font-size:15px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tool{--a:var(--acc);background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:4px;transition:transform .15s,border-color .15s;min-width:0;position:relative;overflow:hidden}
.tool::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--a)}
.tool:hover{transform:translateY(-3px);border-color:var(--a)}
.tool .ic{width:38px;height:34px;border-radius:9px;background:color-mix(in srgb,var(--a) 14%,var(--card));color:var(--a);display:grid;place-items:center;font-weight:700;font-size:14px}
.tool h3{margin:6px 0 0;font-size:17px}.tool p{margin:0;color:var(--sub);font-size:14.5px}
.tool em{font-style:normal;font-size:12px;color:var(--sub);margin-top:auto;padding-top:8px;overflow-wrap:anywhere}
.princ{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.princ div{border-top:3px solid var(--acc);padding-top:10px}.princ h3{margin:0 0 4px;font-size:17px}.princ p{margin:0;font-size:15px;color:var(--sub)}
.warn{background:var(--warn);border-radius:12px;padding:12px 16px;font-size:15px;margin-top:18px}
.portalsec{background:var(--slate2);color:#fff;border-radius:18px;padding:26px}
.portalsec h2{font-size:26px;margin:0 0 6px;color:#fff}
.portalsec p{margin:0;color:#cbd5e5;font-size:16px}
.ctas{display:flex;flex-wrap:wrap;gap:8px 10px}
.cta{display:inline-flex;align-items:center;min-height:46px;margin-top:14px;background:var(--gold);color:#2a2000;font-weight:700;padding:10px 20px;border-radius:24px}
.cta:hover{filter:brightness(1.08)}

/* 도구 페이지 */
.layout{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start;padding:8px 0 30px}
.layout>*{min-width:0}
aside.side{position:static;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px}
aside.side h4{margin:4px 8px 8px;font-size:12px;letter-spacing:.06em;color:var(--sub);font-family:var(--mono);text-transform:uppercase}
aside.side a.item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;font-size:14.5px;border-left:3px solid transparent;min-height:40px;line-height:1.35}
aside.side a.item.home i{font-style:normal;font-family:var(--mono);color:var(--acc)}
aside.side a.item:hover{background:var(--bg)}
aside.side a.item.on{background:var(--acc-bg);border-left-color:var(--acc);font-weight:700;color:var(--acc-d)}
details.sg{border:0;background:none;padding:0;margin:2px 0}
details.sg summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;padding:8px 10px;border-radius:8px;font-weight:700;font-size:14.5px;min-height:40px;color:var(--ink)}
details.sg summary::-webkit-details-marker{display:none}
details.sg summary:hover{background:var(--bg)}
details.sg summary i{font-style:normal;font-family:var(--mono);font-size:11px;font-weight:700;color:#fff;background:var(--c);border-radius:5px;padding:0 6px;line-height:20px;min-width:26px;text-align:center}
details.sg summary small{margin-left:auto;color:var(--sub);font-weight:400}
details.sg .group{margin:0 0 4px 10px;border-left:2px solid var(--c);padding-left:4px}
aside.side hr{border:0;border-top:1px solid var(--line);margin:12px 0}
aside.side a.ext{display:block;padding:9px 10px;font-size:14px;color:var(--acc-d);border-radius:8px}aside.side a.ext:hover{background:var(--bg);text-decoration:underline}
aside.side .mini{margin:10px 8px 2px;font-size:12px;color:var(--sub);line-height:1.5}
.page-h{background:var(--acc-bg);border:1px solid color-mix(in srgb,var(--acc) 28%,transparent);border-left:5px solid var(--acc);border-radius:14px;padding:18px 22px;margin-bottom:16px;position:relative;overflow:hidden}
.page-h .big{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:64px;font-weight:700;color:var(--acc);opacity:.16;pointer-events:none}
.page-h .gtag{display:block;font-size:12.5px;color:var(--acc-d);margin-bottom:2px}
.page-h h1{font-size:clamp(24px,4vw,32px);margin:0 0 4px;color:var(--acc-d);overflow-wrap:anywhere}
.page-h p{margin:0;max-width:40em;padding-right:60px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:16px}
.card h2{font-size:19px;margin:0 0 10px}.card h2.c{color:var(--acc-d)}
.card ul,.card ol{margin:0;padding-left:1.2em;color:var(--sub);font-size:16px}.card li{margin-bottom:6px}
.card p{margin:0 0 8px;color:var(--sub);font-size:16px}
.card h3{font-size:17px;margin:18px 0 6px}
.tool-card{border-top:3px solid var(--acc)}
.src{font-size:13px!important;color:var(--sub)}
.src.priv{margin:14px 0 0}
details{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin-bottom:8px}
summary{cursor:pointer;font-weight:700;min-height:28px}details p{margin:8px 0 0;color:var(--sub);font-size:16px}
.srcs{list-style:none;padding:0!important;margin:0}.srcs li{padding:8px 0;border-bottom:1px solid var(--line);margin:0}
.srcs a,.prose a{color:var(--acc-d);text-decoration:underline;word-break:break-word}.srcs span{font-size:13px;color:var(--sub)}
.chipl{display:flex;flex-wrap:wrap;gap:8px}
.chipl a{border:1px solid var(--line);border-radius:18px;padding:6px 14px;font-size:14.5px;min-height:36px;display:inline-flex;align-items:center;background:var(--in)}
.chipl a:hover{border-color:var(--acc);color:var(--acc-d)}
.pn{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.pn a{display:inline-block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:15px}.pn a:hover{border-color:var(--acc)}
.prose{max-width:46em}.prose p{color:var(--ink);font-size:17px}.prose h2{font-size:22px;margin:26px 0 8px}.prose li{margin-bottom:6px}
.prose table.tb{margin:10px 0 16px}
.deep h3{font-size:18px;margin:16px 0 6px;color:var(--acc-d)}
.deep p{margin:0 0 12px}.deep ul,.deep ol{margin:0 0 12px;padding-left:22px}.deep li{margin:3px 0}

/* 엔진(calc.core.js)이 만드는 화면 */
.dv-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;margin-bottom:12px}
.dv-fields .dv-f.t-area{grid-column:1/-1}
.dv-f{min-width:0}
.dv-f label{display:block;font-size:14px;color:var(--sub);margin-bottom:4px;font-weight:500}
.dv-f input[type=text],.dv-f select,.dv-f textarea,.dv-f input[type=file]{width:100%;font:inherit;font-size:16px;min-height:46px;padding:9px 12px;border:1.5px solid var(--line);border-radius:10px;background:var(--in);color:var(--ink)}
.dv-f input.mono,.dv-f textarea.mono{font-family:var(--mono);font-size:14.5px;line-height:1.55}
.dv-f textarea{resize:vertical;min-height:120px;tab-size:2}
.dv-f input[type=text]:focus,.dv-f select:focus,.dv-f textarea:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 25%,transparent)}
.dv-f input[type=color]{width:64px;height:46px;padding:3px;border:1.5px solid var(--line);border-radius:10px;background:var(--in);cursor:pointer}
.dv-f input[type=file]{padding:8px 10px;font-size:14px}
.dv-opts{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:flex-end;margin:0 0 12px}
.dv-f.inline{flex:0 1 auto}
.dv-f.inline select,.dv-f.inline input[type=text]{width:auto;min-width:110px;max-width:100%;min-height:42px}
.dv-f.chk{display:flex;align-items:center;gap:8px;min-height:42px}
.dv-f.chk label{margin:0;color:var(--ink);cursor:pointer}
.dv-f.chk input{width:20px;height:20px;accent-color:var(--acc);flex:none}
.dv-bar{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.btn{min-height:44px;padding:0 22px;border:0;border-radius:10px;background:var(--acc-d);color:var(--on-acc);font:inherit;font-size:15px;font-weight:700;cursor:pointer}
.btn:hover{filter:brightness(1.1)}
.btn2{min-height:44px;padding:0 16px;border:1.5px solid var(--line);border-radius:10px;background:var(--card);color:var(--acc-d);font:inherit;font-size:14.5px;font-weight:700;cursor:pointer}
.btn2:hover{border-color:var(--acc)}
.btn2.ok{border-color:#16a34a;color:#16a34a}
.btn2.sm{min-height:32px;padding:0 12px;font-size:13px;border-radius:8px}
.dv-err{display:none;background:var(--err-bg);color:var(--err);border-left:4px solid #e4452b;border-radius:8px;padding:12px 14px;margin:0 0 12px;font-size:15px;overflow-wrap:anywhere}
.dv-err.on{display:block}
.dv-note{display:none;background:var(--acc-bg);color:var(--acc-d);border-left:4px solid var(--acc);border-radius:8px;padding:10px 14px;margin:0 0 12px;font-size:14.5px}
.dv-note.on{display:block}
.dv-outs{display:grid;gap:14px}
.dv-o{min-width:0}
.dv-oh{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;font-family:var(--mono);font-size:13px;color:var(--acc-d);font-weight:700}
.dv-o.t-area,.dv-o.t-text{background:var(--code);border-radius:12px;padding:10px 12px 12px;border:1px solid var(--code-line)}
.dv-o.t-area .dv-oh,.dv-o.t-text .dv-oh{color:var(--code-dim)}
.dv-o.t-area .btn2,.dv-o.t-text .btn2{background:transparent;color:#cbd5e5;border-color:#3b4a66}
.dv-o.t-area .btn2:hover,.dv-o.t-text .btn2:hover{border-color:#c7d2fe;color:#c7d2fe}
.dv-o.t-area .btn2.ok,.dv-o.t-text .btn2.ok{border-color:#4ade80;color:#4ade80}
.dv-o textarea.mono{width:100%;display:block;background:transparent;color:var(--code-ink);border:0;outline:none;font-family:var(--mono);font-size:14.5px;line-height:1.55;resize:vertical;min-height:110px;padding:2px 0}
.dv-big{font-family:var(--mono);font-size:clamp(20px,4.6vw,28px);font-weight:600;color:#7ee7c7;word-break:break-all;line-height:1.4;padding:2px 0}
.dv-o.t-table,.dv-o.t-kv,.dv-o.t-list,.dv-o.t-html{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px 12px}
.dv-body{min-width:0;overflow-wrap:anywhere}
.dv-body ul{margin:0;padding-left:1.2em}.dv-body li{margin:3px 0;font-family:var(--mono);font-size:14.5px}
.dv-body dl{display:grid;grid-template-columns:minmax(90px,max-content) 1fr;gap:6px 16px;margin:0}
.dv-body dt{color:var(--sub);font-size:14px}.dv-body dd{margin:0;font-size:14.5px;overflow-wrap:anywhere}
.tscroll{overflow-x:auto}
.tb{width:100%;border-collapse:collapse;font-size:14.5px}
.tb th,.tb td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.tb th{font-size:12.5px;color:var(--sub);font-weight:600;white-space:nowrap}
.dv-body .tb td{font-family:var(--mono);font-size:13.5px}
.tb tr.hl{background:var(--acc-bg)}

/* 바닥 */
footer{margin-top:10px;border-top:1px solid var(--line);padding:22px 0 30px;font-size:14px;color:var(--sub)}
.fam{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.fam .lbl{font-weight:700;color:var(--ink)}
.fam a{border:1px solid var(--line);background:var(--card);padding:9px 14px;border-radius:22px;color:var(--ink);min-height:40px;display:inline-flex;align-items:center}
.fam a.cur{background:var(--slate2);border-color:var(--slate2);color:#c7d2fe;font-family:var(--mono)}.fam a:hover:not(.cur){border-color:var(--acc)}
.flinks{display:flex;gap:6px 18px;flex-wrap:wrap;margin-bottom:10px}.flinks a{padding:6px 0}.flinks a:hover{text-decoration:underline}

/* 언어 전환(우측 상단) + 언어별 글꼴 */
.portal .pr{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;justify-content:flex-end}
.lang{display:flex;gap:6px}
.lang a{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid #a5b4fc;border-radius:20px;background:var(--slate2);font-size:13px;font-weight:700;color:#e2e8f0}
.lang a:hover{border-color:#c7d2fe}
.lang a.on{border-color:#c7d2fe;background:#3730a3;color:#eef2ff}
.lang svg{border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.3);flex:none}
html[lang=en]{--font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
html[lang=ja]{--font:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic",Meiryo,"Noto Sans JP",system-ui,sans-serif}
html[lang=en] body,html[lang=ja] body{overflow-wrap:anywhere}
html[lang=ja]{line-break:strict}

@media(max-width:900px){
.layout{grid-template-columns:1fr}
aside.side{position:static;max-height:none;padding:8px;order:2}
aside.side hr,aside.side .mini,aside.side h4{display:none}
aside.side .exts{display:flex;gap:6px;overflow-x:auto}
aside.side a.ext{white-space:nowrap;border:1px solid var(--line)}}
@media(max-width:820px){.hero{grid-template-columns:1fr}.grid,.princ{grid-template-columns:1fr 1fr}}
@media(max-width:560px){
.grid,.princ{grid-template-columns:1fr}
.page-h{padding:16px}.page-h p{padding-right:0}.page-h .big{font-size:44px}
.card{padding:16px}.portalsec{padding:18px}
nav.main{flex-wrap:wrap;width:100%;gap:4px}nav.main a{padding:8px 12px}
.dv-body dl{grid-template-columns:minmax(80px,40%) minmax(0,1fr)}
.portal .pr{justify-content:space-between;width:100%;flex-wrap:nowrap}.lang a span{display:none}.lang a{padding:0 11px}.portal .pr>a{font-size:12px}
.logo{font-size:19px}.hero h1{font-size:27px}}
@media(prefers-reduced-motion:reduce){.tool{transition:none}.logo .cur,.term .cur{animation:none}}

html[lang=ko] body{word-break:keep-all;overflow-wrap:break-word}

/* 수동 광고 (ad_unit): 채워졌을 때만 라벨 표시, 미채움이면 통째로 숨김. 가로 스크롤 방지 */
.adbox{margin:20px 0;text-align:center;min-height:0;max-width:100%;overflow:hidden;clear:both}
.adbox .adlab{display:none;margin:0 0 6px;font-size:11px;line-height:1.2;letter-spacing:.04em;color:var(--sub)}
.adbox:has(ins[data-ad-status="filled"]) .adlab{display:block}
.adbox ins.adsbygoogle{max-width:100%;margin:0 auto}
.adbox:has(ins[data-ad-status="unfilled"]){display:none}
ins.adsbygoogle[data-ad-status="unfilled"]{display:none!important}
.adbox-c{display:none;margin:16px 0 0}
@media(min-width:1024px){.adbox-c{display:block}}
.adbox-c:has(ins[data-ad-status="unfilled"]){display:none}

/* 출처·라이선스 표, 공통 AI 안내 */
.lic-wrap{overflow-x:auto;margin:10px 0 18px}
table.lic{border-collapse:collapse;width:100%;min-width:560px;font-size:15px}
table.lic th,table.lic td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top;background:var(--card)}
table.lic th{background:var(--bg2);font-weight:700}
.lic-attr{font-size:14px;color:var(--sub);margin:4px 0 10px;overflow-wrap:anywhere}
.srcs .lic-tag{display:inline-block;font-family:var(--mono);font-size:12px;border:1px solid var(--line);border-radius:6px;padding:0 6px;margin-left:6px;background:var(--bg2)}
.srcs .attr{display:block;font-size:13.5px;color:var(--sub);overflow-wrap:anywhere}
p.ai-warn{background:var(--warn);border-radius:10px;padding:10px 12px;font-size:14.5px;margin:12px 0 0}

/* AJ-MOBILE-WIDTH (2026-11-12): 모바일 본문 여백 12px, 포털 ajamall.kr 과 동일. 이 블록만 지우면 원복 */
@media (max-width:767px){
:root{--aj-m:12px}
body{padding-left:var(--aj-m)!important;padding-right:var(--aj-m)!important}
.card{margin-left:calc(-1*var(--aj-m))!important;margin-right:calc(-1*var(--aj-m))!important;padding-left:var(--aj-m)!important;padding-right:var(--aj-m)!important;border-left-width:0!important;border-right-width:0!important;border-radius:0!important}
.card .card{margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;border-left-width:1px!important;border-right-width:1px!important;border-radius:12px!important}
.card details{padding-left:var(--aj-m)!important;padding-right:var(--aj-m)!important}
}

/* ── 패밀리 사이트 링크 (2026-11-12): 큰 버튼 대신 작고 차분한 글자 줄. 사이트가 늘어도 자리를 덜 차지한다. 모든 아자몰 사이트 공통 ── */
footer .fam{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 20px;margin:0 0 16px;padding:0}
footer .fam .lbl{flex:0 0 100%;margin:0 0 4px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sub,var(--mut,#64748b));opacity:.85}
footer .fam a{display:inline-block;min-height:0;padding:5px 0;border:0;border-bottom:1px solid transparent;border-radius:0;background:none;font:inherit;font-size:13px;font-weight:400;line-height:1.5;color:var(--sub,var(--mut,#64748b));text-decoration:none;white-space:nowrap;transition:color .15s,border-color .15s}
footer .fam a:hover:not(.cur){color:var(--ink,#1e293b);border-color:currentColor}
footer .fam a.cur{background:none;border-color:var(--acc,var(--pri,#2563eb));color:var(--ink,#1e293b);font-weight:600;font-family:inherit}
@media(max-width:600px){footer .fam{gap:0 16px}footer .fam a{padding:6px 0}}
