/* 생성물 — tools/build-lens-inline.js 가 lens.html 에서 만든다. 직접 고치지 말 것. */
.lenskit{font-size:15.5px;line-height:1.7;color:var(--paper);position:relative}
.lenskit .lk-toast{position:sticky;bottom:14px;margin:14px auto 0;width:max-content;background:var(--paper);color:#fff;padding:9px 18px;border-radius:999px;font-size:13px;opacity:0;transition:opacity .25s;pointer-events:none}
.lenskit .lk-toast.lk-on{opacity:1}
.lenskit .wrap{max-width:940px;margin:0 auto;padding:0 20px 120px}
.lenskit header{padding:34px 0 18px;border-bottom:1px solid var(--line)}
.lenskit .kick{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;color:var(--signal);font-weight:500}
.lenskit h1{margin:8px 0 0;font-size:27px;font-weight:800;letter-spacing:-.03em}
.lenskit .sub{margin:6px 0 0;color:var(--muted);font-size:14px}
.lenskit .lk-who{margin-top:14px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.lenskit .lk-who input{flex:1;min-width:200px}
.lenskit /* 세션 · 탭 */
.lk-ml{margin-top:12px;background:var(--ink-2);border:1px solid var(--line);border-left:3px solid var(--signal);
 border-radius:10px;padding:11px 15px;font-size:13.5px;line-height:1.6}
.lenskit .lk-ml .k{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--signal);display:block;margin-bottom:3px}
.lenskit .sess{display:flex;gap:8px;margin:22px 0 0}
.lenskit .sess button{flex:1;background:var(--ink-2);border:1px solid var(--line);border-radius:12px;
 padding:13px 16px;text-align:left;cursor:pointer;font-family:inherit;color:var(--paper)}
.lenskit .sess button b{display:block;font-size:14.5px;font-weight:800}
.lenskit .sess button span{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.lenskit .sess button.lk-on{border-color:var(--signal);box-shadow:0 0 0 2px rgba(70,29,221,.12)}
.lenskit .tabs{display:flex;gap:6px;margin:14px 0 0;flex-wrap:wrap}
.lenskit .tabs button{background:none;border:1px solid var(--line);border-radius:999px;padding:7px 15px;
 font-size:13px;font-family:inherit;color:var(--muted);cursor:pointer}
.lenskit .tabs button.lk-on{background:var(--paper);color:#fff;border-color:var(--paper);font-weight:700}
.lenskit .tabs button:disabled{opacity:.38;cursor:not-allowed}
.lenskit /* 카드 */
.sec{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin:16px 0 0}
.lenskit .sec h3{margin:0 0 4px;font-size:16.5px;font-weight:800;letter-spacing:-.02em}
.lenskit .sec .hint{margin:0 0 14px;font-size:13px;color:var(--muted)}
.lenskit .f{display:block;margin:13px 0 0}
.lenskit .f .lb{display:block;font-size:13px;font-weight:700;margin-bottom:5px}
.lenskit .f .lb .st{color:var(--hot)}
.lenskit .f .op{font-weight:400;color:var(--muted-2);font-size:12px}
.lenskit input[type=text], .lenskit input[type=url], .lenskit textarea, .lenskit select{width:100%;background:var(--ink);border:1px solid var(--line-strong);
 border-radius:9px;padding:9px 11px;font-family:inherit;font-size:14px;color:var(--paper)}
.lenskit textarea{min-height:64px;resize:vertical;line-height:1.65}
.lenskit input:focus, .lenskit textarea:focus, .lenskit select:focus{outline:2px solid var(--signal);outline-offset:1px;border-color:var(--signal)}
.lenskit .row{display:flex;gap:8px;flex-wrap:wrap}
.lenskit .row>*{flex:1;min-width:130px}
.lenskit .lk-btn{background:var(--paper);color:#fff;border:0;border-radius:9px;padding:10px 16px;
 font-family:inherit;font-size:13.5px;font-weight:700;cursor:pointer}
.lenskit .lk-btn.g{background:none;color:var(--paper);border:1px solid var(--line-strong)}
.lenskit .lk-btn.lk-sm{padding:6px 12px;font-size:12.5px}
.lenskit .lk-btn:disabled{opacity:.4;cursor:not-allowed}
.lenskit .lock{background:var(--ink);border:1px dashed var(--line-strong);border-radius:12px;
 padding:22px;text-align:center;color:var(--muted);font-size:14px;margin-top:16px}
.lenskit .lock b{color:var(--paper)}
.lenskit /* 코치 */
.coach{margin:14px 0 0;display:flex;flex-direction:column;gap:7px}
.lenskit .co{background:#FFF8E8;border:1px solid #E9D08A;border-left:3px solid #C99A16;border-radius:9px;
 padding:10px 14px;font-size:13.5px;color:#5A4410}
.lenskit .co.lk-ok{background:#E9F5F2;border-color:#9CCFC4;border-left-color:var(--signal-2);color:#0B4F49}
.lenskit /* 문헌 카드 */
.card{background:var(--ink);border:1px solid var(--line-strong);border-radius:12px;padding:15px 17px;margin:11px 0 0}
.lenskit .card .top{display:flex;gap:9px;align-items:baseline;flex-wrap:wrap}
.lenskit .tag{font-family:var(--mono);font-size:11px;font-weight:500;padding:3px 8px;border-radius:5px;
 background:rgba(70,29,221,.1);color:var(--signal)}
.lenskit .tag.t2{background:rgba(14,124,134,.12);color:var(--signal-2)}
.lenskit .tag.lk-warn{background:rgba(197,55,26,.1);color:var(--hot)}
.lenskit .card .lk-x{margin-left:auto;background:none;border:0;color:var(--muted-2);cursor:pointer;font-size:16px}
.lenskit .chk{display:flex;gap:8px;align-items:center;font-size:13.5px;margin-top:10px;cursor:pointer}
.lenskit .chk input{width:16px;height:16px;accent-color:var(--signal)}
.lenskit /* 해석판 */
.cells{display:grid;gap:10px;margin-top:12px}
.lenskit .cell{background:var(--ink);border:1px solid var(--line-strong);border-radius:11px;padding:13px 15px}
.lenskit .cell.empty{border-color:var(--hot);border-style:dashed;background:#FDF1EE}
.lenskit .cell .ch{display:flex;gap:8px;align-items:center}
.lenskit .cell .ch input{flex:1}
.lenskit .cell .state{font-family:var(--mono);font-size:11px;font-weight:500;padding:2px 8px;border-radius:5px;white-space:nowrap}
.lenskit .st-full{background:rgba(14,124,134,.12);color:var(--signal-2)}
.lenskit .st-empty{background:rgba(197,55,26,.1);color:var(--hot)}
.lenskit .recs{margin-top:9px;display:flex;flex-direction:column;gap:5px}
.lenskit .rec{display:flex;gap:7px;align-items:center;background:var(--ink-2);border:1px solid var(--line);
 border-radius:7px;padding:6px 10px;font-size:12.5px}
.lenskit .rec .m{font-family:var(--mono);font-size:10.5px;color:var(--muted-2);white-space:nowrap}
.lenskit .rec .lk-x{margin-left:auto;background:none;border:0;color:var(--muted-2);cursor:pointer}
.lenskit .ask{background:#F4F1FE;border:1px solid #C9BAF5;border-radius:12px;padding:15px 17px;margin-top:12px}
.lenskit .ask .st1{font-size:12.5px;font-weight:700;color:var(--signal);margin-bottom:6px}
.lenskit .ask textarea{background:var(--ink-2);font-size:13px;min-height:52px}
.lenskit .ask .pr{font-family:var(--mono);font-size:11.5px;line-height:1.65;white-space:pre-wrap;
 background:var(--ink-2);border:1px solid var(--line-strong);border-radius:9px;padding:11px 13px;
 max-height:150px;overflow:auto;color:var(--muted)}
.lenskit .con{background:var(--ink);border:1px solid var(--line-strong);border-radius:11px;padding:13px 15px;margin-top:10px}
.lenskit .con .cn{font-size:15px;font-weight:800}
.lenskit .con .ce{font-size:12.5px;color:var(--muted);font-family:var(--mono)}
.lenskit .con .c1{font-size:13.5px;margin-top:6px}
.lenskit .con .cw{font-size:12.5px;color:var(--muted);margin-top:5px}
.lenskit .con .cr{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px;align-items:center}
.lenskit .sres{margin-top:12px;display:flex;flex-direction:column;gap:10px}
.lenskit .hit{background:var(--ink);border:1px solid var(--line-strong);border-radius:11px;padding:13px 15px}
.lenskit .hit .ti{font-size:14.5px;font-weight:700;line-height:1.5}
.lenskit .hit .me{font-size:12.5px;color:var(--muted);margin-top:4px}
.lenskit .hit .ab{font-size:12.5px;color:var(--muted);margin-top:7px;line-height:1.6;
 display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.lenskit .hit .ac{display:flex;gap:7px;align-items:center;margin-top:10px;flex-wrap:wrap}
.lenskit .hit a{font-size:12.5px;color:var(--signal);text-decoration:none}
.lenskit .harvest{background:#F4F1FE;border:1px solid #C9BAF5;border-radius:11px;padding:13px 16px;margin-top:12px}
.lenskit .harvest h4{margin:0 0 8px;font-size:14px;font-weight:800;color:var(--signal)}
.lenskit .harvest .hrow{display:flex;gap:7px;align-items:baseline;flex-wrap:wrap;margin:6px 0}
.lenskit .harvest .hl{font-size:12px;font-weight:700;color:var(--muted);min-width:96px}
.lenskit .pill{background:var(--ink-2);border:1px solid var(--line-strong);border-radius:999px;
 padding:4px 11px;font-size:12px;cursor:pointer;font-family:inherit;color:var(--paper)}
.lenskit .pill:hover{border-color:var(--signal);color:var(--signal)}
.lenskit .pool{background:#FDF1EE;border:1px solid #E9B5A6;border-radius:12px;padding:14px 16px;margin-top:14px}
.lenskit .pool h4{margin:0 0 3px;font-size:14.5px;font-weight:800;color:var(--hot)}
.lenskit .pool .hint{font-size:12.5px;color:#8A4A36;margin-bottom:9px}
.lenskit .core{background:var(--paper);color:#fff;border-radius:14px;padding:20px 22px;margin-top:16px}
.lenskit .core .lb{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:#B9A9FF}
.lenskit .core textarea{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);color:#fff;margin-top:8px}
.lenskit .core textarea::placeholder{color:rgba(255,255,255,.45)}
.lenskit .lk-status{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:var(--paper);color:#fff;
 padding:9px 18px;border-radius:999px;font-size:13px;opacity:0;transition:opacity .25s;pointer-events:none;z-index:9}
.lenskit .lk-status.lk-on{opacity:1}
.lenskit footer{margin-top:44px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted-2);font-size:12.5px;line-height:1.8}
.lenskit code{font-family:var(--mono);font-size:.9em;background:var(--ink);border:1px solid var(--line);border-radius:4px;padding:1px 5px}
