:root{--ink:#203e35;--muted:#78817a;--green:#285c4d;--lime:#d9e7a8;--paper:#f8f9f5;--line:#e3e7df}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Malgun Gothic","Apple SD Gothic Neo",sans-serif;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #88a953;outline-offset:4px}.header{height:104px;max-width:1320px;padding:0 50px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;font-size:23px;letter-spacing:-1px;font-weight:800}.brand-mark{display:grid;place-items:center;background:var(--green);color:var(--lime);border-radius:13px;width:43px;height:43px;font:900 34px Georgia}.brand small{display:block;font-size:8px;letter-spacing:1.8px;line-height:1.2;margin-top:2px}.header-note{color:var(--muted);font-size:12px}.account{display:flex;gap:24px;align-items:center;font-size:13px}.quiet{border:0;background:none;color:var(--muted)}footer{max-width:1220px;margin:0 auto;padding:28px 0;border-top:1px solid var(--line);color:#899087;font-size:11px;display:flex;justify-content:space-between}.login-shell{max-width:1120px;margin:64px auto 76px;display:grid;grid-template-columns:1.15fr 1fr;gap:95px;align-items:center}.eyebrow,.tiny-label{font-size:10px;letter-spacing:2px;font-weight:700;color:#75916b}.login-story h1{font-size:46px;line-height:1.35;letter-spacing:-2.5px;margin:20px 0}.intro{color:var(--muted);font-size:14px;line-height:1.9}.book-scene{position:relative;height:320px;margin-top:32px}.orbit{position:absolute;border:1px solid #d9dfcd;width:390px;height:270px;border-radius:50%;transform:rotate(-18deg);top:20px;left:-22px}.paper{position:absolute;width:175px;height:238px;border-radius:3px 9px 9px 3px;box-shadow:7px 14px 22px #223c3420;padding:23px 20px;border-left:6px solid #ffffff25}.paper>span{font-size:8px;letter-spacing:1.2px}.paper strong{display:block;font-family:Georgia,serif;font-size:31px;line-height:1.15;margin-top:30px}.paper i{position:absolute;bottom:18px;font-size:8px;font-style:normal}.paper-back{background:#b6c990;transform:rotate(-14deg);top:26px;left:26px}.paper-front{background:#285c4d;color:#fff;transform:rotate(10deg);top:2px;left:191px}.paper-front strong{font-size:29px}.dot{color:#d8e7a8}.book-sun{width:44px;height:44px;border-radius:50%;background:#dce8ac;margin-top:19px}.scene-tag{position:absolute;bottom:9px;left:79px;background:#f1eddf;border-radius:30px;padding:8px 18px;font-size:11px;transform:rotate(-4deg);color:#6a745d}.login-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:40px;box-shadow:0 12px 36px #233c3305}.login-card h2{font-size:29px;letter-spacing:-1px;margin:9px 0}.login-card>p{font-size:12px;color:var(--muted);margin:0 0 24px}.kind{border:0;padding:4px;margin:0 0 25px;background:#f2f4ef;display:flex;border-radius:9px}.kind legend{position:absolute;width:1px;height:1px;overflow:hidden}.kind label{flex:1;cursor:pointer}.kind input{position:absolute;opacity:0;width:1px;height:1px}.kind span{display:block;text-align:center;padding:10px 3px;color:var(--muted);font-size:12px;border-radius:7px}.kind input:checked+span{background:white;box-shadow:0 2px 6px #0000000a;color:var(--green);font-weight:700}.kind input:focus-visible+span{outline:3px solid #88a953}.login-form>label{display:block;font-size:12px;font-weight:700;margin:18px 0 8px}.login-form input:not([type=radio]):not([type=hidden]):not([type=checkbox]){width:100%;height:49px;border:1px solid var(--line);border-radius:8px;padding:0 14px;background:#fdfefd;font-size:12px}.password-wrap{position:relative}.password-wrap input{padding-right:65px!important}.password-wrap button{position:absolute;right:12px;top:14px;border:0;background:none;color:var(--muted);font-size:11px}.primary{display:flex;justify-content:space-between;width:100%;background:var(--green);color:white;border:0;border-radius:8px;padding:15px 18px;margin:24px 0 20px;font-weight:700}.primary:hover{background:#194334}.login-card .login-help{font-size:11px;line-height:1.9;color:#8a9189}.login-bottom{border-top:1px solid var(--line);padding-top:20px;text-align:center;font-size:11px;color:#75816f}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#8ca86d;margin-right:7px}.validation{color:#ac3d30;font-size:12px}.validation ul{padding-left:18px}.validation-summary-valid{display:none}.demo-note{background:#fff3d7;color:#715721;font-size:11px;padding:12px 16px;border-radius:8px;margin-bottom:16px}.library{max-width:1220px;margin:0 auto;padding:30px 0 48px}.breadcrumb{font-size:11px;color:var(--muted);margin-bottom:26px}.breadcrumb span{margin:0 12px;color:#bcc4b8}.library-hero{background:#eaf0e0;border-radius:18px;padding:36px 48px;display:flex;align-items:center;justify-content:space-between;margin-bottom:39px;overflow:hidden}.library-hero .eyebrow{color:#6a825b;margin:0}.library-hero h1{font-size:36px;letter-spacing:-1.8px;margin:10px 0}.library-hero p:last-child{color:#74806d;font-size:12px;line-height:1.9;margin-bottom:0}.hero-stamp{border:1px solid #a5b58f;border-radius:50%;width:160px;height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(10deg);margin-right:35px;outline:1px solid #c5d1b5;outline-offset:8px}.hero-stamp>span{font-size:8px;letter-spacing:2px}.hero-stamp strong{font:italic 31px/.95 Georgia;margin:11px}.shelf-heading{display:flex;align-items:center;justify-content:space-between}.shelf-heading h2{margin:5px 0 0;font-size:23px;letter-spacing:-1px}.shelf-heading h2 span{margin-left:10px;font:500 19px Georgia;color:#8d9d7b}.search{display:flex;border:1px solid var(--line);border-radius:9px;background:white;width:290px}.search input{border:0;background:none;min-width:0;flex:1;padding:13px;font-size:12px}.search button{border:0;background:none;padding:0 16px;font-size:12px;color:var(--green)}.tabs{display:flex;gap:8px;padding:23px 0 20px;border-bottom:1px solid var(--line);overflow:auto}.tabs a{padding:9px 20px;border-radius:30px;font-size:12px;white-space:nowrap;color:#7e877a}.tabs a:hover{background:#e8eddf}.tabs a.active{background:var(--green);color:white;font-weight:700}.results{display:flex;justify-content:space-between;font-size:11px;color:#8a9285;margin:21px 0 24px}.results strong{color:var(--green)}.book-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:34px 25px}.book-cover{height:243px;border:1px solid #e8eade;border-radius:12px;background:#eff1e9;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;transition:background .2s}.book-card:nth-child(3n+2) .book-cover{background:#eeeee8}.book-card:nth-child(3n+3) .book-cover{background:#e9eee7}.book-cover img{width:136px;height:185px;object-fit:contain;filter:drop-shadow(5px 9px 5px #1c35232b);transition:transform .2s}.book-cover:hover img{transform:translateY(-5px)}.open-book{position:absolute;bottom:0;left:0;right:0;padding:9px;background:#285c4dee;color:white;text-align:center;font-size:11px;opacity:0;transition:opacity .2s}.book-cover:hover .open-book,.book-cover:focus-visible .open-book{opacity:1}.book-meta{padding:14px 2px}.book-meta>span{font-size:9px;color:#839476}.book-meta h3{font-size:13px;line-height:1.55;margin:5px 0;word-break:keep-all}.book-meta small{font-size:9px;color:#a2a89e;letter-spacing:.8px}.library-note{display:flex;align-items:center;gap:14px;margin-top:36px;padding:21px;border:1px solid var(--line);border-radius:10px;color:#87907e;font-size:11px}.library-note>span{border:1px solid #a6b29b;border-radius:50%;width:19px;height:19px;text-align:center;font:italic 14px Georgia}.library-note p{margin:0}.empty{padding:75px 20px;text-align:center;color:#7e8a75}.empty h3{font-size:18px}.empty p{font-size:12px}.empty a{display:inline-block;margin-top:15px;border-bottom:1px solid}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip:focus{position:fixed;top:5px;left:5px;background:white;padding:10px;z-index:100}@media(min-width:1500px){.login-shell{margin-top:85px;margin-bottom:95px}}@media(max-width:1300px){.library,footer{margin-left:40px;margin-right:40px}.login-shell{margin-left:60px;margin-right:60px;gap:55px}.book-cover{height:220px}}@media(max-width:1000px){.login-shell{gap:35px;margin:45px 35px}.login-story h1{font-size:37px}.login-card{padding:28px}.paper-front{left:145px}.paper{width:150px}.orbit{width:300px}.book-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.book-cover{height:205px}.book-cover img{width:115px;height:160px}.hero-stamp{margin-right:0}.header{padding:0 35px}}@media(max-width:720px){.header{height:82px;padding:0 22px}.brand{font-size:20px}.brand-mark{width:36px;height:36px;font-size:30px}.header-note{display:none}.account{gap:8px;font-size:11px}.quiet{font-size:11px}.login-shell{display:block;max-width:440px;margin:32px auto 40px;padding:0 20px}.login-story h1{font-size:30px}.login-story .intro,.book-scene{display:none}.login-story{margin-bottom:28px}.login-story h1 br{display:none}.eyebrow{font-size:8px}.login-card{padding:27px}.library{margin:0;padding:23px 20px 32px}.library-hero{padding:26px;margin-bottom:26px}.library-hero h1{font-size:27px}.hero-stamp{display:none}.shelf-heading{display:block}.search{width:100%;margin-top:20px}.tabs{gap:2px}.tabs a{padding:8px 15px}.results>span:last-child{display:none}.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.book-cover{height:220px}.book-cover img{width:115px;height:165px}.book-meta h3{font-size:12px}.open-book{opacity:1;font-size:10px;padding:5px;background:#285c4d}.library-note{align-items:flex-start;font-size:10px}.library-note>span{flex-shrink:0}footer{margin:0 22px;font-size:9px;gap:20px}footer span:last-child{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(max-width:720px){.account{gap:6px;min-width:0;margin-left:12px}.account>span{max-width:78px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quiet{white-space:nowrap;padding:4px}.brand{flex-shrink:0;font-size:18px}.brand small{font-size:6px;letter-spacing:1.2px}.tabs{scrollbar-width:thin}}
.company-logo{display:block;width:135px;height:58px;object-fit:contain}.login-form>label.remember-id{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:400;cursor:pointer;margin-top:16px}.remember-id input{width:16px;height:16px;margin:0;accent-color:var(--green)}@media(max-width:720px){.company-logo{width:101px;height:auto}.brand{gap:8px}.brand small{display:none}.brand{font-size:15px}.account>span{max-width:60px}}
