.lib2f{--bg:#f6efe3;--ink:#2b1f15;--wood:#9c6b43;--wood-dark:#6e4527;--coral:#ff8c6b;--coral-deep:#c25532;--card:#fffdf7;--sans:"Pretendard Variable", Pretendard, -apple-system, "Noto Sans KR", "Malgun Gothic", sans-serif;background:var(--bg);font-family:var(--sans);color:var(--ink);background-image:radial-gradient(at 50% -10%,#fff7e8 0%,#0000 55%);min-height:100vh;font-weight:500;overflow-x:hidden}.lib2f button{font-family:var(--sans)}.lib2f :focus-visible{outline:2px solid var(--coral-deep);outline-offset:3px;border-radius:6px}.lib2f .page-pad{padding:36px 20px 80px}.lib2f .lib-head{text-align:center;max-width:900px;margin:0 auto 8px}.lib2f .eyebrow{letter-spacing:.32em;color:var(--wood-dark);background:#fffbf2;border:1.5px solid #c9a87e;border-radius:999px;margin-bottom:16px;padding:6px 15px 5px;font-size:12px;font-weight:700;display:inline-block}.lib2f .lib-title{letter-spacing:.01em;color:var(--ink);font-size:clamp(32px,5.5vw,46px);font-weight:800}.lib2f .lib-title .dot{color:var(--coral)}.lib2f .sub{color:#5c4a38;margin-top:10px;font-size:16px;font-weight:600}.lib2f .userbar{color:#5c4a38;justify-content:flex-end;align-items:center;gap:10px;max-width:960px;margin:0 auto 6px;font-size:13.5px;font-weight:700;display:flex}.lib2f .userbar .leave{background:var(--card);color:#75603f;cursor:pointer;border:1.5px solid #d9be97;border-radius:999px;padding:6px 13px;font-size:12.5px;font-weight:700;text-decoration:none;transition:border-color .2s}.lib2f .userbar .leave:hover{border-color:var(--coral)}.lib2f .desk{max-width:540px;margin:28px auto 10px;position:relative}.lib2f .desk input{width:100%;font-size:16px;font-weight:600;font-family:var(--sans);background:var(--card);color:var(--ink);border:2px solid #d9be97;border-radius:12px;outline:none;padding:15px 48px 15px 20px;transition:border-color .2s,box-shadow .2s;box-shadow:0 3px #e4d2b4}.lib2f .desk input::placeholder{color:#99805f;font-weight:500}.lib2f .desk input:focus{border-color:var(--coral);box-shadow:0 3px #f3c9b8}.lib2f .desk .icon{opacity:.6;font-size:18px;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.lib2f .desk-clear{color:#6e4527;cursor:pointer;background:#f0e4cc;border:none;border-radius:50%;width:30px;height:30px;font-size:14px;font-weight:800;line-height:1;transition:background .15s,transform .15s;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.lib2f .desk-clear:hover{background:#e4d2b4;transform:translateY(-50%)scale(1.08)}.lib2f .hint{color:#75603f;text-align:center;max-width:540px;margin:10px auto 0;font-size:13.5px;font-weight:600}.lib2f .count{color:var(--coral-deep);font-weight:800}.lib2f .lib-main{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:34px;max-width:1300px;margin:36px auto 0;display:grid}.lib2f .stacks{width:100%;max-width:960px;margin:0 auto}.lib2f .search-hit .row-label{color:var(--coral-deep)}.lib2f .search-hit .row-label:after{background:linear-gradient(90deg,#f3c9b8,#0000)}.lib2f .search-hit .row-count{color:var(--coral-deep);background:#fdeae3}.lib2f .toolbox{background:radial-gradient(120% 80% at 50% -10%,#fff7e4 0%,#0000 60%),linear-gradient(#fffdf7,#fdf6e8);border:2px solid #d9be97;border-radius:18px;flex-direction:column;gap:12px;padding:22px 18px 18px;display:flex;position:sticky;top:24px;box-shadow:0 4px #e4d2b4,0 22px 40px -24px #50321459}.lib2f .toolbox-head{color:var(--wood-dark);letter-spacing:.02em;align-items:center;gap:9px;font-size:19px;font-weight:800;display:flex}.lib2f .toolbox-head .lampdot{background:radial-gradient(circle at 35% 35%, #ffe9bb, var(--coral) 75%);border-radius:50%;width:10px;height:10px;box-shadow:0 0 10px 3px #ff8c6b73}.lib2f .toolbox-sub{color:#75603f;margin:-6px 0 2px;font-size:13px;font-weight:600}.lib2f .toolcard{background:#fffdf7;border:2px solid #e2cba5;border-radius:14px;align-items:center;gap:12px;padding:15px 14px 15px 16px;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 3px #e4d2b4}.lib2f .toolcard:before{content:"";background:linear-gradient(180deg, var(--tc), color-mix(in srgb, var(--tc) 65%, #000));width:6px;position:absolute;top:0;bottom:0;left:0}.lib2f .toolcard:hover{border-color:var(--tc);transform:translateY(-3px);box-shadow:0 5px #e4d2b4,0 14px 26px -12px #50321466}.lib2f .toolcard .t-chip{background:color-mix(in srgb, var(--tc) 14%, #fff);border:1.5px solid color-mix(in srgb, var(--tc) 35%, #fff);border-radius:12px;flex:0 0 46px;justify-content:center;align-items:center;height:46px;font-size:22px;display:flex}.lib2f .toolcard .t-body{flex:1;min-width:0}.lib2f .toolcard b{color:var(--ink);word-break:keep-all;font-size:15.5px;font-weight:800;line-height:1.4;display:block}.lib2f .toolcard small{color:#75603f;word-break:keep-all;margin-top:3px;font-size:12.5px;font-weight:600;line-height:1.55;display:block}.lib2f .toolcard .t-go{color:var(--tc);flex:none;font-size:16px;font-weight:800;transition:transform .2s}.lib2f .toolcard:hover .t-go{transform:translate(2px,-2px)}.lib2f .row-label{color:var(--wood-dark);align-items:center;gap:10px;margin:30px 4px 0;font-size:18px;font-weight:800;display:flex}.lib2f .row-count{color:#7d6549;background:#f0e4cc;border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:700}.lib2f .row-label:after{content:"";background:linear-gradient(90deg,#d8bc93,#0000);flex:1;height:1.5px}.lib2f .shelf{perspective:1400px;flex-wrap:wrap;align-items:flex-end;gap:16px;padding:24px 22px 0;display:flex}.lib2f .board{background:linear-gradient(180deg, #b07c4f 0%, var(--wood) 40%, var(--wood-dark) 100%);border-radius:3px;height:16px;margin:0 6px;box-shadow:0 10px 18px -6px #50321473,inset 0 1px #d9a876}.lib2f .book{text-align:left;cursor:pointer;width:136px;height:180px;transform-style:preserve-3d;transform-origin:bottom;background:0 0;border:none;transition:transform .45s cubic-bezier(.2,.9,.3,1.2),opacity .3s,filter .3s;position:relative;transform:rotateY(-8deg)}.lib2f .book:hover,.lib2f .book:focus-visible{z-index:5;transform:translateY(-14px)rotateY(-22deg)scale(1.06)}.lib2f .book:hover:after{opacity:.85;width:96%;left:2%}.lib2f .bcover{background:linear-gradient(165deg, #ffffff52 0%, #ffffff0d 38%, #00000024 78%, #0000004d 100%), var(--c);color:#fffdf7;border-radius:4px 11px 11px 4px;flex-direction:column;gap:8px;padding:13px 16px 11px 22px;display:flex;position:absolute;inset:0;box-shadow:10px 14px 26px -8px #3c230f8c,inset 0 0 0 1px #00000024,inset 0 2px #ffffff47,inset -10px 0 14px -10px #0006}.lib2f .bcover:before{content:"";background:linear-gradient(90deg,#0000006b 0%,#ffffff2e 45%,#0000001f 70%,#00000047 100%);border-radius:4px 0 0 4px;width:12px;position:absolute;top:0;bottom:0;left:0;box-shadow:inset -1px 0 #00000040}.lib2f .bcover:after{content:"";background:repeating-linear-gradient(#fdf3dd 0 2px,#e2d3b2 2px 3px);border-radius:0 9px 9px 0;width:6px;position:absolute;top:4px;bottom:4px;right:1px;box-shadow:inset -1px 0 1px #785a2859}.lib2f .bcover .badge{letter-spacing:.18em;border:1px solid #fffdf7b3;border-radius:999px;align-self:flex-start;padding:3px 9px;font-size:10.5px;font-weight:700}.lib2f .bcover .ct{word-break:keep-all;text-shadow:0 1px 3px #00000073;flex:1;align-items:center;font-size:16px;font-weight:800;line-height:1.45;display:flex}.lib2f .bcover .cb{letter-spacing:.25em;opacity:.9;font-size:9px;font-weight:600}.lib2f .book:after{content:"";background:radial-gradient(#3c230f66,#0000 70%);width:88%;height:10px;position:absolute;bottom:-5px;left:6%;transform:translateZ(-1px)}.lib2f .book.dim{opacity:.14;filter:grayscale(.9);pointer-events:none}.lib2f-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:50;--coral:#ff8c6b;--coral-deep:#c25532;--card:#fffdf7;--ink:#2b1f15;background:#281a0f8c;justify-content:center;align-items:center;padding:20px;font-family:Pretendard Variable,Pretendard,-apple-system,Noto Sans KR,Malgun Gothic,sans-serif;display:flex;position:fixed;inset:0}.lib2f-overlay .reader{background:var(--card);width:100%;max-width:580px;max-height:calc(100dvh - 40px);color:var(--ink);border-radius:16px;gap:24px;padding:28px 28px 24px;animation:.35s cubic-bezier(.2,.9,.3,1.15) lib2f-pop;display:flex;position:relative;overflow-y:auto;box-shadow:0 30px 60px -20px #321e0a80}@keyframes lib2f-pop{0%{opacity:0;transform:translateY(18px)scale(.96)}}.lib2f-overlay .mini{background:linear-gradient(165deg, #ffffff42, #fff0 45%), var(--c);color:#fffdf7;border-radius:4px 10px 10px 4px;flex-direction:column;flex:0 0 132px;justify-content:space-between;height:186px;padding:14px 12px 12px 16px;display:flex;box-shadow:6px 8px 18px -6px #3c230f80,inset 6px 0 8px -4px #00000059}.lib2f-overlay .mini b{word-break:keep-all;text-shadow:0 1px 3px #0006;font-size:15.5px;font-weight:800;line-height:1.5}.lib2f-overlay .mini span{letter-spacing:.25em;opacity:.9;font-size:8.5px;font-weight:600}.lib2f-overlay .body h2{word-break:keep-all;margin-bottom:5px;font-size:21px;font-weight:800}.lib2f-overlay .cat{color:var(--coral-deep);letter-spacing:.15em;margin-bottom:10px;font-size:12px;font-weight:800}.lib2f-overlay p{color:#4a3a28;word-break:keep-all;font-size:14.5px;font-weight:500;line-height:1.8}.lib2f-overlay .tags{flex-wrap:wrap;gap:6px;margin-top:13px;display:flex}.lib2f-overlay .tags i{color:#63503a;background:#f3e7d2;border-radius:999px;padding:4px 11px;font-size:12px;font-style:normal;font-weight:700}.lib2f-overlay .item-list{flex-direction:column;gap:9px;margin-top:16px;display:flex}.lib2f-overlay .item-pair{flex-wrap:wrap;gap:8px;display:flex}.lib2f-overlay .item-pair .itembtn{flex:auto}.lib2f-overlay .itembtn{text-align:center;background:var(--coral);color:#fff;cursor:pointer;box-shadow:0 3px 0 var(--coral-deep);border:none;border-radius:10px;padding:11px 16px;font-size:14px;font-weight:800;text-decoration:none;transition:filter .15s,transform .15s;display:inline-block}.lib2f-overlay .itembtn:hover{filter:brightness(1.05)}.lib2f-overlay .itembtn:active{box-shadow:0 1px 0 var(--coral-deep);transform:translateY(2px)}.lib2f-overlay .itembtn.ghost{color:var(--coral-deep);background:#fff;border:2px solid #f3c9b8;flex:0 auto;box-shadow:0 2px #f3c9b8}.lib2f-overlay .itembtn.cafe{background:#2f5d50;box-shadow:0 3px #1f4237}.lib2f-overlay .close{color:#8a7052;cursor:pointer;background:0 0;border:none;font-size:21px;line-height:1;position:absolute;top:12px;right:14px}.lib2f .empty{text-align:center;color:#75603f;margin-top:40px;font-size:15px;font-weight:600}.lib2f .lib-foot{text-align:center;color:#75603f;max-width:960px;margin:56px auto 0;font-size:13.5px;font-weight:600;line-height:1.9}.lib2f .lib-foot b{color:var(--wood-dark);font-weight:800}.lib2f .gate-link{background:linear-gradient(#fffdf7,#fdf3e2);border:2px solid #d9be97;border-radius:14px;align-items:center;gap:14px;max-width:540px;margin:18px auto 0;padding:14px 18px;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s;display:flex;box-shadow:0 3px #e4d2b4}.lib2f .gate-link:hover{border-color:var(--coral);transform:translateY(-2px);box-shadow:0 5px #e4d2b4}.lib2f .gate-link .stairs{background:#fdefe7;border:1.5px solid #f3c9b8;border-radius:11px;flex:0 0 44px;justify-content:center;align-items:center;height:44px;font-size:22px;display:flex}.lib2f .gate-link .t{flex:1;min-width:0}.lib2f .gate-link .t b{color:var(--ink);font-size:15.5px;font-weight:800;display:block}.lib2f .gate-link .t small{color:#75603f;margin-top:2px;font-size:12.5px;font-weight:600;display:block}.lib2f .gate-link .go{color:var(--coral-deep);white-space:nowrap;font-size:13px;font-weight:800}@media (prefers-reduced-motion:reduce){.lib2f .book,.lib2f-overlay .reader,.lib2f .toolcard{transition:none;animation:none}}@media (max-width:1080px){.lib2f .lib-main{grid-template-columns:1fr;gap:26px}.lib2f .toolbox{grid-template-columns:repeat(3,1fr);gap:10px;display:grid;position:static}.lib2f .toolbox-head,.lib2f .toolbox-sub{grid-column:1/-1}}@media (max-width:640px){.lib2f .page-pad{padding:28px 12px 60px}.lib2f .shelf{gap:10px;padding:22px 8px 0}.lib2f .book{width:calc(33.3333% - 6.66667px);min-width:96px;height:165px}.lib2f .bcover{padding:10px 9px 9px 15px}.lib2f .bcover .ct{font-size:13.5px}.lib2f .bcover .badge{padding:2px 7px;font-size:9px}.lib2f-overlay .reader{text-align:center;flex-direction:column;align-items:center;padding:24px 18px 20px}.lib2f-overlay .mini{flex:none}.lib2f-overlay .tags{justify-content:center}.lib2f-overlay .item-pair{flex-direction:column}.lib2f .toolbox{grid-template-columns:1fr}}@media (max-width:500px){.lib2f .book{width:calc(50% - 5px);height:185px}.lib2f .bcover{padding:12px 12px 10px 18px}.lib2f .bcover .ct{font-size:15.5px}.lib2f .bcover .badge{padding:3px 8px;font-size:10px}.lib2f .row-label{font-size:16.5px}.lib2f .lib-title{font-size:34px}.lib2f .sub{font-size:14.5px}}
