/* All rules are restricted to the library document or its own components. */
body.rutt-library-page{--rl-ink:#162b37;--rl-gold:#9a753d;--rl-paper:#f7f3eb;--rl-line:#ded6c9;margin:0;background:var(--rl-paper);color:var(--rl-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic",sans-serif;font-size:16px;line-height:1.75;word-break:keep-all;overflow-wrap:anywhere}
.rutt-library-page *{box-sizing:border-box}.rutt-library-page [hidden]{display:none!important}.rutt-library-page a{color:inherit;text-decoration:none}.rutt-library-page button,.rutt-library-page input{font:inherit}.rutt-library-page button,.rutt-library-page a,.rutt-library-page input{touch-action:manipulation}.rutt-library-page a:focus-visible,.rutt-library-page button:focus-visible,.rutt-library-page input:focus-visible{outline:3px solid #be9b5f;outline-offset:5px}.rutt-library-page button{cursor:pointer}.rutt-library-page h1,.rutt-library-page h2,.rutt-library-page h3,.rutt-library-page p{margin:0}.rutt-library-page h1,.rutt-library-page h2,.rutt-library-page h3{font-family:Georgia,"Noto Serif KR","Batang",serif;font-weight:500;line-height:1.4;letter-spacing:-.04em}.rl-sr{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rl-skip{position:fixed;top:-100px;left:12px;padding:12px 20px;background:#fff;color:#152e3b;z-index:999999}.rl-skip:focus{top:40px}
.rl-site-header{max-width:1320px;margin:auto;padding:27px 48px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--rl-line)}.rl-brand{display:flex;flex-direction:column;gap:2px}.rl-brand-name{font-family:Georgia,serif;font-size:24px;font-weight:500;letter-spacing:.14em;line-height:1.4}.rl-brand-sub{font-size:8px;letter-spacing:.24em;color:#6d6255}.rl-site-header nav{display:flex;gap:32px;align-items:center;font-size:13px}.rl-site-header nav a{padding:10px 0}.rl-nav-current{border-bottom:1px solid #9a753d}.rl-preview{padding:12px 24px;background:#ece4d5;color:#5e4a2d;text-align:center;font-size:12px;line-height:1.7;border-bottom:1px solid #dacdb9}
.rl-hero{max-width:1320px;margin:auto;min-height:470px;position:relative;display:flex;align-items:center;background:linear-gradient(90deg,rgba(12,17,20,.64),rgba(14,16,18,.24) 64%,rgba(14,16,18,.1)),url("library-hero.webp") center 54%/cover;color:#fff}.rl-hero-content{padding:70px 9%;position:relative}.rutt-library-page .rl-kicker{font-family:Georgia,serif;font-size:11px;font-weight:500;letter-spacing:.2em;line-height:1.6;color:#8b6835;margin-bottom:14px}.rl-hero .rl-kicker{color:#dcc28f}.rl-hero h1{font-size:50px;line-height:1.5;color:#fff;margin-bottom:20px}.rl-hero-deck{font-size:15px;color:#f0e7d8;line-height:1.9}.rl-hero-link{display:inline-flex;gap:32px;align-items:center;margin-top:30px;padding-bottom:7px;border-bottom:1px solid #b9a58a;font-size:13px;color:#fff}.rl-hero-mark{position:absolute;right:6%;bottom:44px;font-family:Georgia,serif;font-size:10px;color:#e1cfb5;letter-spacing:.24em;line-height:2}
.rl-collection{max-width:1200px;margin:auto;padding:64px 44px 28px;scroll-margin-top:32px}.rl-section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.rl-section-heading h2{font-size:32px}.rl-section-heading>p{font-size:13px;color:#766d60}.rl-controls{display:flex;gap:22px;align-items:center;justify-content:space-between;margin-bottom:15px}.rl-filters{display:flex;gap:9px;flex-wrap:wrap}.rl-filters button{min-height:44px;min-width:62px;padding:8px 18px;border:1px solid #ded4c4;border-radius:30px;background:#efe8dc;color:#5b5144;font-size:13px}.rl-filters button[aria-pressed="true"]{background:#162d3c;color:white;border-color:#162d3c}.rl-search{display:flex;align-items:center;gap:10px;border-bottom:1px solid #bdb1a0;padding:6px 4px;min-width:220px}.rl-search>span[aria-hidden]{font-size:26px;line-height:1}.rl-search input{width:100%;min-width:0;min-height:36px;color:#263b46;font-size:13px;border:0;background:transparent;border-radius:0}.rl-search input::placeholder{color:#746a5b}.rl-count{font-size:12px;color:#7c705e;margin:10px 0 22px!important}
.rl-bookshelf{--rl-row:365px;--rl-cols:4;display:grid;grid-template-columns:repeat(var(--rl-cols),minmax(0,1fr));grid-auto-rows:var(--rl-row);gap:0;margin:0!important;padding:0 28px!important;list-style:none;background-color:#3d281d;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 261px,#22130dd9 262px,#65412b 264px,#a0754a 268px,#513322 277px,#21140d 288px,#20150d 296px,#352219 365px),repeating-linear-gradient(91deg,#ffffff04 0,#ffffff04 1px,transparent 1px,transparent 15px),linear-gradient(90deg,#251810,#67472e 38%,#3a261b);border:8px solid #68492f;border-top:9px solid #5a3a27;border-radius:5px;box-shadow:0 16px 35px #39210e20,inset 8px 0 16px #1f0d0b55,inset -8px 0 16px #1f0d0b55}.rl-book{list-style:none;margin:0!important;padding:0 12px!important;min-width:0;position:relative;display:flex;align-items:start;justify-content:center;text-align:center}.rl-book>a{display:flex;align-items:center;flex-direction:column;width:100%;padding-top:28px;min-height:100%;color:#fff7e8}.rl-cover{display:flex;position:relative;flex-direction:column;align-items:center;justify-content:flex-start;width:154px;max-width:100%;height:234px;padding:23px 17px 14px;color:#e7cc91;background:#143041;border-radius:1px 3px 3px 1px;box-shadow:8px 5px 8px #180e0980,-1px 0 0 #ffffff33,inset 5px 0 4px #0005,inset 7px 0 1px #fff1;transform:perspective(900px) rotateY(-8deg);transition:transform .23s ease,box-shadow .23s ease}.rl-book a:hover .rl-cover{transform:perspective(900px) rotateY(-2deg) translateY(-5px);box-shadow:10px 12px 13px #180e0980}.rl-cover::before{content:"";position:absolute;inset:8px 8px 8px 11px;border:1px solid currentColor;opacity:.25;pointer-events:none}.rl-cover::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,#fff2 0,#fff2 .3px,transparent .3px,transparent 3px);opacity:.15;pointer-events:none}.rl-cover-imprint{font-family:Georgia,serif;font-size:5px;letter-spacing:.16em;line-height:1.4;opacity:.8}.rl-cover-title{font-family:Georgia,"Batang",serif;font-size:23px;letter-spacing:-.05em;line-height:1.6;margin-top:17px;max-width:112px;text-align:center}.rl-cover-rule{width:18px;border-top:1px solid currentColor;opacity:.55;margin:11px 0}.rl-cover-sub{font-size:7px;line-height:1.8;text-align:center;max-width:90px}.rl-cover-foot{font-family:Georgia,serif;font-size:5px;letter-spacing:.18em;margin-top:auto;padding-top:7px}.rl-cover-art{display:block;position:relative;margin-top:auto;width:64px;height:35px;overflow:hidden;opacity:.6}.rl-cover-art i{display:block;position:absolute;bottom:-28px;left:5px;width:52px;height:52px;border:1px solid currentColor;transform:rotate(45deg)}.rl-cover-art i:nth-child(2){left:25px;bottom:-36px}.rl-cover-art i:nth-child(3){left:-20px;bottom:-40px}.rl-tone-cream{color:#534730;background:#e5dbc8}.rl-tone-green{color:#d8c697;background:#273f34}.rl-tone-wine{color:#e1caa1;background:#663a35}.rl-tone-sand{color:#55462f;background:#c9b79c}.rl-tone-charcoal{color:#d6c598;background:#292d2b}.rl-cover-image{padding:0;background:transparent;box-shadow:8px 5px 8px #180e0980;overflow:hidden}.rl-cover-image:before,.rl-cover-image:after{display:none}.rl-cover-image img{width:100%;height:100%;object-fit:contain;display:block}.rl-book-caption{display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:17px;width:100%;line-height:1.5}.rl-book-topic{font-size:9px;color:#d7bc8f}.rl-book-title{font-size:13px;font-weight:500;line-height:1.5;color:#fff5e4;max-width:100%}.rl-book-author{font-size:10px;color:#cfbba4}.rl-book-open{font-size:9px;color:#d9c5a7;margin-top:5px}.rl-book-open span{margin-left:10px}.rl-empty{text-align:center;padding:70px 20px;background:#ece5d9;border:1px solid #ded4c4;border-radius:4px}.rl-empty h3{font-size:23px;margin-bottom:10px}.rl-empty p{font-size:14px;color:#6c6254}.rl-empty button{margin-top:20px;min-height:44px;border:1px solid #a28a68;background:transparent;border-radius:3px;padding:8px 18px;color:#263a46}
.rl-feature{max-width:1112px;margin:30px auto 70px;padding:38px 7%;display:grid;grid-template-columns:1fr 180px;gap:40px;align-items:center;background:radial-gradient(ellipse at 84% 80%,#e1cfad 0,transparent 55%),#eae2d4;border:1px solid #e0d4c1}.rl-feature h2{font-size:29px;margin-bottom:14px}.rl-feature p:not(.rl-kicker){font-size:14px;line-height:1.9;color:#625849;margin-bottom:24px}.rl-button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:48px;padding:12px 23px;background:#17303e;color:#fff!important;border:1px solid #17303e;border-radius:4px;font-size:13px}.rl-feature-cover{justify-self:center;transform:rotate(5deg)}.rl-feature-cover .rl-cover{width:130px;height:193px;padding:19px 15px 12px}.rl-feature-cover .rl-cover-title{font-size:19px;margin-top:12px}.rl-feature-cover .rl-cover-sub{font-size:6px}.rl-feature-cover .rl-cover-rule{margin:6px 0}.rl-feature-cover .rl-cover-art{height:28px}.rl-closing{text-align:center;max-width:760px;padding:10px 24px 80px;margin:auto}.rl-closing h2{font-size:31px;margin-bottom:19px}.rl-closing p:not(.rl-kicker){font-size:14px;line-height:2;color:#746858}.rl-closing>a{display:inline-block;font-size:12px;margin-top:25px;padding-bottom:5px;border-bottom:1px solid #b69a71}
.rl-site-footer{background:#132a37;color:#e8dfce;padding:44px max(28px,calc((100vw - 1024px)/2));font-size:12px}.rl-site-footer .rl-brand-name{font-size:20px}.rl-site-footer p{margin:17px 0;color:#c2c2b7;line-height:1.9}.rl-site-footer nav{display:flex;gap:22px;font-size:11px;margin:22px 0}.rl-site-footer small{color:#a9b1b0;font-size:10px;letter-spacing:.05em}
.rl-detail{max-width:1150px;margin:auto;padding:0 36px 65px}.rl-breadcrumb{display:flex;align-items:center;justify-content:space-between;padding:24px 0;font-size:12px;color:#6e634f}.rl-detail .rl-preview{border:1px solid #ded0b9;margin-bottom:25px;text-align:left}.rl-detail-top{display:grid;grid-template-columns:1fr 1fr;background:#eee6d8;border:1px solid #ddd0bb;margin-bottom:30px}.rl-booth{background:radial-gradient(ellipse at 50% 30%,#926b43 0,#4b301f 56%,#2b1d14 100%);min-height:485px;display:flex;align-items:center;flex-direction:column;justify-content:end;position:relative;padding:45px 40px 61px;overflow:hidden}.rl-booth:before{content:"";position:absolute;inset:24px;border:1px solid #c8a87833}.rl-booth-label{color:#e3c890;font-family:Georgia,serif;font-size:10px;letter-spacing:.22em;margin-bottom:35px;position:relative}.rl-booth .rl-cover{width:206px;height:306px;padding:29px 22px 20px;z-index:1}.rl-booth .rl-cover-title{font-size:31px;max-width:158px;margin-top:21px}.rl-booth .rl-cover-imprint,.rl-booth .rl-cover-foot{font-size:7px}.rl-booth .rl-cover-sub{font-size:10px;max-width:133px}.rl-booth .rl-cover-art{height:50px;width:86px}.rl-plinth{position:absolute;bottom:41px;width:72%;height:22px;background:linear-gradient(#ad804d 0,#82582f 24%,#4b2f19 25%,#4d3320 77%,#271b11 100%);box-shadow:0 10px 12px #140a0880;transform:perspective(400px) rotateX(10deg);z-index:2}.rl-book-intro{display:flex;flex-direction:column;align-items:start;justify-content:center;padding:45px 46px}.rl-book-intro h1{font-size:39px;margin:5px 0 18px}.rl-intro-deck{font-size:17px;line-height:1.8;color:#6b5a46;margin-bottom:26px!important}.rl-facts{margin:0 0 20px;width:100%;font-size:13px}.rl-facts>div{display:flex;padding:7px 0;border-bottom:1px solid #d8cebf}.rl-facts dt{min-width:65px;color:#786a57}.rl-facts dd{margin:0}.rl-sample-label{font-size:11px;color:#74624c;margin:10px 0 24px!important}.rl-reading{max-width:720px;margin:auto}.rl-note-section{padding:38px 0;border-bottom:1px solid var(--rl-line)}.rl-note-section h2,.rl-questions h2,.rl-related h2{font-size:28px;margin-bottom:20px}.rl-note-section p,.rl-note-section li{font-size:16px;line-height:1.95;color:#37434b}.rl-note-section ul,.rl-questions ul{padding-left:22px;margin:0}.rl-note-section li,.rl-questions li{margin:9px 0}.rl-questions{background:#ece4d5;border-left:3px solid #9d7b46;padding:28px 30px;margin:34px 0 0}.rl-questions li{font-size:16px;line-height:1.9}.rl-prose{scroll-margin-top:50px}.rl-prose>p{margin:0 0 1.4em}.rl-prose>h2:not(:first-of-type){font-size:23px;margin-top:1.8em}.rl-prose h3{font-size:21px;margin:1.6em 0 .8em}.rl-prose a{color:#315e79;text-decoration:underline;text-underline-offset:3px}.rl-prose img{max-width:100%;height:auto}.rl-prose table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px}.rl-prose th,.rl-prose td{padding:9px;border:1px solid #d3ccbf;overflow-wrap:anywhere}.rl-prose th{background:#193340;color:#fff}.rl-purchase{padding:28px;border:1px solid #cdbd9e;margin:34px 0}.rl-purchase h2{font-size:24px;margin-bottom:15px}.rl-purchase p{font-size:12px;line-height:1.8;margin:14px 0}.rl-purchase .rl-disclosure{font-size:14px;color:#423b30}.rl-related{padding:40px 0 0}.rl-related>a{display:grid;grid-template-columns:100px 1fr 22px;gap:16px;padding:20px 0;border-bottom:1px solid #dcd3c3;align-items:center}.rl-related>a>span:first-child{font-size:11px;color:#7d6749}.rl-related strong{font-size:14px;font-weight:500}
@media(min-width:1200px){.rl-bookshelf{--rl-cols:5;padding:0 20px!important}.rl-book{padding:0 9px!important}}
@media(max-width:850px){.rl-site-header{padding:24px 28px}.rl-site-header nav{gap:20px}.rl-hero{min-height:420px}.rl-hero-content{padding:50px 8%}.rl-hero h1{font-size:43px}.rl-collection{padding:48px 28px 24px}.rl-bookshelf{--rl-cols:3;padding:0 16px!important}.rl-feature{margin:24px 28px 55px}.rl-detail-top{grid-template-columns:1fr 1fr}.rl-book-intro{padding:28px}.rl-book-intro h1{font-size:32px}.rl-booth{padding-left:22px;padding-right:22px}}
@media(max-width:600px){.rl-site-header{padding:18px 20px;gap:12px;flex-wrap:wrap}.rl-brand-name{font-size:20px}.rl-brand-sub{font-size:6px;letter-spacing:.18em}.rl-site-header nav{font-size:11px;gap:18px;margin-left:auto}.rl-site-header nav a{padding:5px 0}.rl-site-header nav a:first-child{display:none}.rl-preview{font-size:11px;padding:10px 18px}.rl-hero{min-height:355px;background-position:59% center}.rl-hero-content{padding:42px 27px;width:100%;background:linear-gradient(90deg,#16181144,transparent)}.rl-hero h1{font-size:35px;line-height:1.55;margin-bottom:16px}.rl-hero .rl-kicker{font-size:9px}.rl-hero-deck{font-size:13px;line-height:1.9}.rl-hero-link{font-size:12px;margin-top:24px}.rl-hero-mark{display:none}.rl-collection{padding:36px 18px 16px}.rl-section-heading{display:block;margin-bottom:20px}.rl-section-heading h2{font-size:27px}.rl-section-heading>p{font-size:12px;margin-top:9px}.rutt-library-page .rl-kicker{font-size:9px;margin-bottom:9px}.rl-controls{flex-direction:column;align-items:stretch;gap:16px}.rl-filters{gap:7px}.rl-filters button{font-size:12px;min-width:58px;min-height:42px;padding:8px 15px}.rl-search{min-width:0;padding:4px 8px}.rl-search input{font-size:16px}.rl-count{font-size:11px;margin-bottom:16px!important}.rl-bookshelf{--rl-cols:2;--rl-row:345px;grid-auto-rows:var(--rl-row);padding:0 7px!important;border-width:5px;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 229px,#24150d 230px,#785136 232px,#ae8152 236px,#604027 244px,#2e1c10 256px,#352219 270px,#352219 345px),repeating-linear-gradient(91deg,#ffffff04 0,#ffffff04 1px,transparent 1px,transparent 15px),linear-gradient(90deg,#342015,#69482d 48%,#392319)}.rl-book{padding:0 9px!important}.rl-book>a{padding-top:24px}.rl-book .rl-cover{width:134px;height:206px;padding:19px 13px 12px}.rl-book .rl-cover-title{font-size:21px;margin-top:15px;max-width:106px}.rl-book .rl-cover-sub{font-size:7px}.rl-book .rl-cover-rule{margin:9px 0}.rl-book-caption{padding-top:17px}.rl-book-topic{font-size:10px}.rl-book-title{font-size:13px;line-height:1.55}.rl-book-author{font-size:10px}.rl-book-open{font-size:10px;margin-top:7px}.rl-feature{grid-template-columns:1fr 105px;gap:15px;margin:24px 18px 42px;padding:27px 22px}.rl-feature h2{font-size:23px}.rl-feature p:not(.rl-kicker){font-size:12px;margin-bottom:20px}.rl-feature-cover .rl-cover{width:94px;height:148px;padding:13px 10px 9px}.rl-feature-cover .rl-cover-title{font-size:15px;max-width:74px;margin-top:10px;line-height:1.55}.rl-feature-cover .rl-cover-imprint,.rl-feature-cover .rl-cover-foot{font-size:4px}.rl-feature-cover .rl-cover-sub{font-size:5px;max-width:65px}.rl-feature-cover .rl-cover-art{height:15px}.rl-feature .rl-button{font-size:11px;padding:10px 14px;gap:15px;min-height:44px}.rl-closing{padding:0 25px 50px}.rl-closing h2{font-size:27px}.rl-closing p:not(.rl-kicker){font-size:13px}.rl-site-footer{padding:35px 24px}.rl-detail{padding:0 18px 42px}.rl-breadcrumb{padding:20px 0;font-size:11px}.rl-detail .rl-preview{padding:10px 14px;margin-bottom:18px}.rl-detail-top{grid-template-columns:1fr;margin-bottom:5px}.rl-booth{min-height:391px;padding:27px 25px 50px}.rl-booth-label{margin-bottom:23px;font-size:9px}.rl-booth .rl-cover{width:183px;height:273px;padding:24px 20px 18px}.rl-booth .rl-cover-title{font-size:29px;max-width:145px;margin-top:18px}.rl-booth .rl-cover-sub{font-size:8px}.rl-booth .rl-cover-foot,.rl-booth .rl-cover-imprint{font-size:6px}.rl-plinth{bottom:29px;height:23px}.rl-book-intro{padding:29px 24px}.rl-book-intro h1{font-size:31px;margin-bottom:12px}.rl-intro-deck{font-size:15px;margin-bottom:18px!important}.rl-facts{font-size:13px}.rl-book-intro .rl-button{width:100%;font-size:13px}.rl-note-section{padding:30px 5px}.rl-note-section h2,.rl-questions h2,.rl-related h2{font-size:24px;margin-bottom:16px}.rl-note-section p,.rl-note-section li,.rl-questions li{font-size:16px;line-height:1.9}.rl-questions{padding:25px 21px;margin-top:27px}.rl-related{padding:30px 5px 0}.rl-related>a{grid-template-columns:1fr 20px;gap:6px;padding:18px 0}.rl-related>a>span:first-child{grid-column:1}.rl-related strong{grid-column:1;font-size:14px}.rl-related>a>span:last-child{grid-column:2;grid-row:span 2}.rl-purchase{padding:23px 20px}.rl-purchase .rl-button{width:100%}}
@media(max-width:360px){.rl-brand-name{font-size:18px}.rl-site-header nav{font-size:10px;gap:12px}.rl-hero h1{font-size:32px}.rl-collection{padding-left:13px;padding-right:13px}.rl-book{padding:0 6px!important}.rl-book .rl-cover{width:121px;padding-left:11px;padding-right:11px}.rl-book .rl-cover-title{font-size:20px}.rl-feature{margin-left:13px;margin-right:13px;padding:24px 17px;grid-template-columns:1fr 85px}.rl-feature-cover .rl-cover{width:83px}}
@media(prefers-reduced-motion:reduce){.rl-cover{transition:none}.rl-book a:hover .rl-cover{transform:none}}

/* Real covers fill the book frame at every breakpoint. */
.rutt-library-page .rl-cover.rl-cover-image{padding:0!important}
.rutt-library-page .rl-cover-image img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;margin:0}

/* Filtering must work with both the library and shared site templates. */
[data-rutt-library] [hidden]{display:none!important}
