/* Greed Island BOOK: live card pockets and console over the approved pixel room. */
body[data-view=library][data-archive=hunter]{background:#263b2e url('assets/archive/book-room-v1.png') center top/cover fixed;min-height:100dvh;color:#f3efd9}
body[data-view=library][data-archive=hunter] .site-header{height:68px;margin:0 auto;width:calc(100% - 80px);max-width:1440px;padding:0 24px;background:#f1ead7;border:0;border-bottom:3px solid #c0b99c;box-shadow:0 4px 0 #151e2280;color:#171e24}
body[data-view=library][data-archive=hunter] .brand svg,body[data-view=library][data-archive=hunter] .brand small{display:none}
body[data-view=library][data-archive=hunter] .brand span{font-size:32px;line-height:1}
body[data-view=library][data-archive=hunter] .site-header nav button{font-size:15px;color:#354154}
body[data-view=library][data-archive=hunter] .site-header nav button.active:after{background:#335c9c;bottom:8px}
body[data-view=library][data-archive=hunter] .count{display:none}
#library[data-theme=hunter]{max-width:1440px;padding:14px 40px 40px;margin:auto}
.book-toolbar{display:flex;align-items:center;gap:20px;min-height:86px;margin:0 0 14px}
.book-heading{display:flex;align-items:center;gap:10px;flex-shrink:0}
#book-cover{display:block;width:64px;height:70px;transform:rotate(-5deg);filter:drop-shadow(3px 3px 0 #121e22)}
.book-art{width:100%;height:100%;display:block;overflow:hidden;image-rendering:pixelated}
#library[data-theme=hunter] h1{font-size:40px;letter-spacing:2px;line-height:1;margin:0;text-shadow:3px 3px 0 #17232c}
#library[data-theme=hunter] .filters{display:flex;gap:5px;flex-wrap:wrap;margin-left:14px}
#library[data-theme=hunter] .filters button{font-size:13px;white-space:nowrap;padding:9px 12px;color:#eee5ce;background:#15282dd6;border:1px solid #63745f;box-shadow:2px 2px 0 #132425}
#library[data-theme=hunter] .filters button[aria-pressed=true]{background:#f0ead8;color:#152a33;border-color:#efe9da}
#library[data-theme=hunter] .search{margin-left:auto;display:flex;align-items:center;gap:8px;border:1px solid #b5bb99;background:#112726e8;padding:0 10px;color:#eeecd6;min-width:0}
#library[data-theme=hunter] .search input{color:#eeecd6;width:140px;font-size:12px;background:transparent;padding:11px 0;border:0;min-width:0}
#library[data-theme=hunter] .search input::placeholder{color:#c3c9b2}
#library[data-theme=hunter] .search:focus-within{outline:2px solid #70d8cf;outline-offset:3px}
#library[data-theme=hunter] .back-button{border:1px solid #aebaa1;background:#12272ac7;padding:10px 12px;color:#ece6cd;white-space:nowrap;font-size:12px}
.greed-book{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,.96fr);max-width:1360px;margin:auto;background:#304ca0;border:4px solid #0c2145;padding:9px 12px 14px;box-shadow:inset 0 0 0 3px #6588c4,inset 0 0 0 6px #233d89,8px 12px 0 #14232670;animation:book-arrive .32s ease-out both}
.book-paper{position:relative;min-width:0;background:#f2eed9;border:3px solid #d5ceb0;padding:20px 27px 14px;box-shadow:inset 3px 0 0 #fcf7e6,inset -5px 0 0 #c5c4a7,3px 3px 0 #a6a78f,6px 6px 0 #dfdcc2,9px 9px 0 #a1a78e;color:#333f42}
.book-paper:before{content:'';position:absolute;inset:7px auto 12px 12px;width:3px;background:#d6d0b1;box-shadow:5px 0 0 #e1ddc6;pointer-events:none}
.pocket-caption{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:10px;color:#616a63;letter-spacing:.8px;padding:0 0 15px}
#library[data-theme=hunter] .work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 14px;align-items:stretch}
.program-card{position:relative;min-width:0;width:100%;aspect-ratio:.82;border:4px solid #1c2427;padding:4px;display:grid;grid-template-rows:24px minmax(0,1fr) 43px;gap:4px;background:#101d24;color:#181e22;box-shadow:0 0 0 2px #b4ab8a,3px 4px 0 #7b7e6780;transition:transform .16s,box-shadow .16s;isolation:isolate;text-align:left}
.program-card:before,.empty-pocket:before{content:'';position:absolute;inset:4px;border:1px solid #8b9998;pointer-events:none;z-index:1;clip-path:polygon(0 0,22% 0,22% 2%,2% 2%,2% 22%,0 22%,0 0,100% 0,100% 22%,98% 22%,98% 2%,78% 2%,78% 0,100% 0,100% 100%,78% 100%,78% 98%,98% 98%,98% 78%,100% 78%,100% 100%,0 100%,0 78%,2% 78%,2% 98%,22% 98%,22% 100%,0 100%)}
.program-card:hover{transform:translateY(-4px);box-shadow:0 0 0 2px #a2b4a7,3px 8px 0 #1e342b44}
.program-card[aria-pressed=true]{transform:translateY(-5px);box-shadow:0 0 0 2px #49cfc3,0 0 0 5px #93e6cd,3px 9px 0 #16382c65}
.program-card:focus-visible{outline:3px solid #bf554c;outline-offset:7px}
.card-header{display:flex;align-items:center;gap:6px;min-width:0;background:#f4f0dd;padding:2px 4px;border-bottom:2px solid #a6b0a9;font-weight:700;font-size:12px;white-space:nowrap}
.card-number{font-size:10px;letter-spacing:-1px;flex-shrink:0}
.card-name{overflow:hidden;text-overflow:ellipsis}
.card-picture{display:block;min-width:0;min-height:0;border:1px solid #899da0;background:#101b20}
.card-footer{display:flex;flex-direction:column;justify-content:center;gap:5px;padding:5px 7px;background:#dce5ea;border:1px solid #819898;color:#506276}
.card-type{font-size:10px;line-height:1.1}
.card-rule{height:3px;width:85%;background:#93a8b9;opacity:.65}
.card-rule.short{width:54%}
.empty-pocket{display:grid;place-items:center;aspect-ratio:.82;position:relative;border:4px solid #1c2528;background:#132126;box-shadow:0 0 0 2px #b4ab8a;color:#83979d;font-size:22px}
.page-footer{display:flex;justify-content:space-between;font-size:10px;color:#6b7364;gap:10px;padding-top:17px}
.book-binding{position:relative;z-index:2;background:#304d9c;border-left:3px solid #102b60;border-right:2px solid #071e48;box-shadow:inset 4px 0 #5974b4,inset -3px 0 #233e81}
.book-binding:before,.book-binding:after{content:'';position:absolute;left:9px;width:6px;height:6px;border:1px solid #9faab5;border-radius:50%;background:#19315e}
.book-binding:before{top:12px}.book-binding:after{bottom:12px}
.book-binding i{position:absolute;left:-21px;width:65px;height:28px;border:6px solid #91968d;border-top-color:#e8e6cc;border-bottom-color:#565d60;border-radius:50%;box-shadow:0 2px 0 2px #152731,inset 0 2px 0 2px #233741;transform:rotate(-6deg)}
.book-binding i:nth-child(1){top:12%}.book-binding i:nth-child(2){top:36%}.book-binding i:nth-child(3){top:60%}.book-binding i:nth-child(4){top:84%}
.book-console{min-width:0;display:flex;flex-direction:column;justify-content:space-between;margin-left:5px;border:4px solid #082238;background:#175272;padding:30px 27px 20px;box-shadow:inset 0 0 0 2px #4991b5,inset 0 0 0 5px #123d5d;position:relative}
.book-console:before{content:'';position:absolute;inset:10px;border:1px solid #2c6580;pointer-events:none}
.book-screen{position:relative;display:flex;flex-direction:column;align-items:flex-start;background:#081216;color:#f4efdc;border:4px solid #071622;box-shadow:0 0 0 4px #0c334b,inset 0 0 0 2px #223b3e;padding:22px 24px 24px;min-height:385px;flex:1}
.screen-id{font-size:12px;letter-spacing:3px;color:#7edbcf;margin:0 0 10px}
.screen-title{font-size:clamp(20px,2.1vw,32px);line-height:1.45;font-weight:700;margin:0;letter-spacing:0;word-break:keep-all}
.screen-art{width:60%;aspect-ratio:1.4;margin:14px auto 18px;align-self:center;border:3px solid #6d9ca1;box-shadow:3px 3px 0 #122c34;animation:card-read .18s steps(4,end)}
.screen-type{display:inline-block;border:1px solid #65c8c2;padding:3px 9px;color:#89dfd2;font-size:12px;line-height:1.6}
.screen-description{font-family:Galmuri14,Galmuri,sans-serif;font-size:15px;line-height:1.8;color:#dddccb;margin:10px 0 18px;word-break:keep-all}
.screen-action{display:block;align-self:center;text-align:center;min-width:65%;padding:12px 18px;border:2px solid #ded9bf;background:#f5efd9;color:#192528;font-size:17px;text-decoration:none;box-shadow:3px 4px 0 #02090d;margin-top:auto;transition:background .15s,transform .15s}
.screen-action:hover{background:#d4eee1;transform:translateY(-2px)}
.screen-pending{border:1px solid #52676a;padding:10px 15px;font-size:13px;color:#aab9b3;margin-top:auto}
.console-controls{display:grid;grid-template-columns:1.05fr .62fr 1fr;gap:15px;align-items:stretch;padding-top:22px}
.console-left{display:flex;flex-direction:column;gap:20px;align-items:center}
.console-buttons{display:flex;gap:9px;width:100%}
.console-buttons button{padding:10px 5px;background:#eee9d5;border:2px solid #bdbca9;box-shadow:3px 4px 0 #08263b;color:#16232c;flex:1;font-size:14px;font-weight:700;min-width:0}
.console-buttons button:hover{background:#d4eee1}
.console-buttons button:active{translate:1px 2px;box-shadow:1px 2px 0 #08263b}
.book-speaker{width:100px;max-width:80%;aspect-ratio:1;border:5px solid #b6c7c6;border-bottom-color:#5b8599;border-right-color:#6c93a4;border-radius:50%;background:radial-gradient(circle,#596973 1px,transparent 1.6px) 0 0/5px 5px,#0a2031;box-shadow:0 0 0 2px #112b3a,inset 0 0 0 5px #071b2a}
.console-slot{border:3px solid #08253b;background:repeating-linear-gradient(90deg,#09202b 0 4px,#153141 4px 6px);box-shadow:inset 0 0 0 2px #1c475d;padding:7px;display:flex;align-items:center;min-width:0;position:relative}
.console-slot:after{content:'';position:absolute;left:50%;top:10px;bottom:10px;border-left:2px solid #597d8e;opacity:.5}
.console-slot .book-art{height:auto;aspect-ratio:1.4;opacity:.35}
.book-pad{display:grid;align-self:center;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,42px);gap:4px;color:#f06c5c}
.book-pad button{padding:0;font-size:39px;line-height:1;text-shadow:-2px -2px 0 #f39375,2px 2px 0 #8d3028,3px 4px 0 #081f30;filter:drop-shadow(0 2px 0 #052437);min-width:0;transition:color .12s}
.book-pad button:hover{color:#ffa783}
.book-pad button:active{translate:0 2px}
.book-pad [data-book-dir=up]{grid-column:2;grid-row:1}.book-pad [data-book-dir=left]{grid-column:1;grid-row:2}.book-pad #book-activate{grid-column:2;grid-row:2}.book-pad [data-book-dir=right]{grid-column:3;grid-row:2}.book-pad [data-book-dir=down]{grid-column:2;grid-row:3}
#library[data-theme=hunter] .empty{min-height:450px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px 16px;border:2px dashed #b6b69f;background:#e5e3d0;color:#354347}
#library[data-theme=hunter] .empty strong{font-size:22px}#library[data-theme=hunter] .empty p{font-size:13px;color:#656f68}
#library[data-theme=hunter] .empty .primary{width:auto;background:#294958;padding:12px 16px}
body[data-view=library][data-archive=hunter] button:focus-visible,body[data-view=library][data-archive=hunter] a:focus-visible{outline-color:#f3a078}
@keyframes book-arrive{from{opacity:0;transform:translateY(14px) scale(.99)}to{opacity:1;transform:none}}
@keyframes card-read{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(min-width:1500px){#library[data-theme=hunter]{max-width:1440px}.program-card{grid-template-rows:28px minmax(0,1fr) 48px}.card-header{font-size:14px}.card-number{font-size:12px}.screen-art{width:65%}.screen-description{font-size:16px}.book-screen{padding:26px 28px}}
@media(max-width:1150px){
 body[data-view=library][data-archive=hunter] .site-header{width:calc(100% - 40px)}#library[data-theme=hunter]{padding:12px 20px 32px}.book-toolbar{gap:12px}.book-heading{gap:5px}#book-cover{width:50px;height:56px}#library[data-theme=hunter] h1{font-size:32px}#library[data-theme=hunter] .filters{margin-left:0}#library[data-theme=hunter] .filters button{padding:8px;font-size:12px}#library[data-theme=hunter] .search input{width:95px}.greed-book{padding:8px 9px 12px;grid-template-columns:minmax(0,1fr) 26px minmax(0,.96fr)}.book-paper{padding:16px 19px 12px}.pocket-caption{font-size:9px;letter-spacing:0;padding-bottom:12px}#library[data-theme=hunter] .work-grid{gap:13px 10px}.program-card{grid-template-rows:22px minmax(0,1fr) 35px;padding:3px;border-width:3px}.card-header{gap:3px;font-size:11px;padding:2px}.card-number{font-size:9px}.card-footer{padding:4px;gap:3px}.card-type{font-size:9px}.card-rule{height:2px}.book-console{padding:20px 18px 16px}.book-screen{padding:18px;min-height:340px}.screen-art{margin:12px auto;width:60%}.screen-description{font-size:13px;margin:9px 0 14px}.screen-action{font-size:15px;padding:10px 15px}.console-controls{gap:10px;padding-top:20px}.console-buttons{gap:7px}.console-buttons button{font-size:12px;padding:8px 4px}.console-left{gap:16px}.book-pad{grid-template-rows:repeat(3,34px);gap:2px}.book-pad button{font-size:30px}.book-speaker{width:82px}.book-binding i{width:56px;left:-19px;height:25px;border-width:5px}.page-footer{font-size:9px;padding-top:13px}
}
@media(max-width:900px){
 body[data-view=library][data-archive=hunter]{background-size:auto 100dvh;background-position:center top}
 body[data-view=library][data-archive=hunter] .site-header{width:calc(100% - 24px);height:60px;padding:0 14px}body[data-view=library][data-archive=hunter] .brand span{font-size:26px}body[data-view=library][data-archive=hunter] .site-header nav button{font-size:12px}body[data-view=library][data-archive=hunter] .site-header nav button:last-child{display:block}
 #library[data-theme=hunter]{padding:10px 12px 32px}.book-toolbar{flex-wrap:wrap;gap:10px;margin-bottom:14px;min-height:unset}.book-heading{order:0;gap:8px}#book-cover{width:42px;height:48px}#library[data-theme=hunter] h1{font-size:28px}.book-toolbar .back-button{order:1;margin-left:auto;font-size:12px}#library[data-theme=hunter] .filters{order:2;gap:5px;width:auto;flex:1}#library[data-theme=hunter] .filters button{font-size:12px;padding:8px 9px}#library[data-theme=hunter] .search{order:3;margin-left:0}#library[data-theme=hunter] .search input{width:110px;font-size:12px;padding:9px 0}
 .greed-book{display:flex;flex-direction:column;gap:20px;padding:12px;max-width:640px;border-width:3px}.book-paper{padding:18px 22px 14px;order:0}.book-binding{position:absolute;left:5px;right:5px;top:calc(50% - 10px);height:15px;display:none}.book-console{margin-left:0;padding:24px;order:1}.book-screen{min-height:380px;padding:22px}.screen-title{font-size:26px}.screen-art{width:55%;max-width:240px}.screen-description{font-size:15px}.screen-action{font-size:17px;min-width:70%}.console-controls{grid-template-columns:1fr .65fr 1fr;gap:16px}.book-pad{grid-template-rows:repeat(3,38px)}.book-pad button{font-size:36px}.console-buttons button{font-size:15px}.book-speaker{width:90px}
 #library[data-theme=hunter] .work-grid{gap:16px 12px}.program-card{grid-template-rows:27px minmax(0,1fr) 38px;aspect-ratio:.8}.card-header{font-size:12px;gap:5px}.card-number{font-size:10px}.card-type{font-size:10px}.pocket-caption{font-size:10px;padding-bottom:17px}.page-footer{font-size:10px}
}
@media(max-width:580px){
 body[data-view=library][data-archive=hunter] .site-header{width:100%;margin:0;padding:0 12px;height:56px}body[data-view=library][data-archive=hunter] .site-header nav{gap:13px}body[data-view=library][data-archive=hunter] .site-header nav button{font-size:12px}body[data-view=library][data-archive=hunter] .brand span{font-size:24px}
 #library[data-theme=hunter]{padding:12px 8px 24px}.book-toolbar{gap:8px;padding:0 5px}#library[data-theme=hunter] .filters{width:100%;flex:none}#library[data-theme=hunter] .filters button{font-size:12px;padding:8px 10px}#library[data-theme=hunter] .search{width:100%;order:4}#library[data-theme=hunter] .search input{width:100%}#library[data-theme=hunter] .search span{font-size:20px}
 .greed-book{padding:9px;gap:14px}.book-paper{padding:15px 12px 12px}.book-paper:before{display:none}.pocket-caption{font-size:8px;padding-bottom:14px}#library[data-theme=hunter] .work-grid{gap:15px 9px}.program-card{padding:2px;gap:3px;grid-template-rows:31px minmax(0,1fr) 23px;aspect-ratio:.69}.card-header{position:relative;display:flex;align-items:flex-end;justify-content:center;padding:1px 0 3px;font-size:11px;gap:0}.card-number{position:absolute;top:0;left:3px;font-size:8px;line-height:1}.card-name{max-width:100%;text-align:center}.card-footer{padding:3px}.card-type{font-size:8px}.card-rule{display:none}.program-card[aria-pressed=true]{box-shadow:0 0 0 2px #49cfc3,0 0 0 4px #93e6cd,2px 6px 0 #16382c65}.empty-pocket{aspect-ratio:.69;font-size:17px;border-width:3px}.page-footer{font-size:8px;padding-top:14px}.book-console{padding:18px 14px 14px;border-width:3px}.book-screen{min-height:350px;padding:17px 15px}.screen-title{font-size:24px}.screen-id{font-size:11px;letter-spacing:2px}.screen-art{width:70%;margin:16px auto}.screen-description{font-size:14px;line-height:1.85}.screen-type{font-size:12px}.screen-action{font-size:16px;width:100%;padding:12px}.console-controls{gap:12px;grid-template-columns:1fr .6fr 1fr;padding-top:20px}.console-buttons{gap:5px}.console-buttons button{font-size:12px;padding:7px 3px}.console-left{gap:16px}.book-speaker{width:74px;border-width:4px}.book-pad{grid-template-rows:repeat(3,30px);gap:1px}.book-pad button{font-size:29px}.console-slot{padding:3px}.book-toolbar .back-button{padding:9px 10px}
 #library[data-theme=hunter] .empty{min-height:300px;padding:24px 12px}#library[data-theme=hunter] .empty strong{font-size:18px}
}
@media(max-width:360px){.card-header{font-size:10px}.book-paper{padding-left:9px;padding-right:9px}#library[data-theme=hunter] .work-grid{gap:13px 7px}.card-type{font-size:7px}.screen-title{font-size:21px}.screen-description{font-size:13px}.console-controls{gap:8px}.book-pad button{font-size:25px}.book-pad{grid-template-rows:repeat(3,27px)}}
@media(prefers-reduced-motion:reduce){.greed-book,.screen-art{animation:none}.program-card,.screen-action{transition:none}}

/* Keep the complete binder visible on ordinary desktop screens. */
#library[data-theme=hunter] h1,.screen-title,.card-header,.screen-action,.console-buttons button{font-family:Galmuri,system-ui,sans-serif;font-weight:700}
@media(min-width:901px){
 .greed-book{width:min(100%,calc((100dvh - 190px)*1.68))}
 .book-screen{min-height:0;padding:18px 20px}
 .screen-art{width:52%;margin:12px auto}
 .screen-description{font-size:14px;line-height:1.7;margin:9px 0 15px}
 .book-console{padding:22px 20px 18px}
 .console-controls{padding-top:20px}
}
@media(min-width:901px) and (max-height:820px){
 #library[data-theme=hunter]{padding-top:8px;padding-bottom:16px}
 .book-toolbar{min-height:58px;margin-bottom:10px}
 #book-cover{width:45px;height:50px}
 #library[data-theme=hunter] h1{font-size:32px}
 .greed-book{width:min(100%,calc((100dvh - 210px)*1.68))}
 .book-paper{padding:15px 19px 12px}
 .pocket-caption{font-size:8px;padding-bottom:12px}
 #library[data-theme=hunter] .work-grid{gap:12px 10px}
 .program-card{grid-template-rows:22px minmax(0,1fr) 30px;padding:3px;border-width:3px}
 .card-header{font-size:11px;gap:3px;padding:1px 2px}.card-number{font-size:9px}
 .card-footer{padding:3px 4px;gap:3px}.card-type{font-size:8px}.card-rule{height:2px}
 .page-footer{font-size:8px;padding-top:12px}
 .book-console{padding:18px 16px 14px}
 .book-screen{padding:14px 16px}
 .screen-id{font-size:10px;margin-bottom:7px}
 .screen-title{font-size:24px}
 .screen-art{width:48%;margin:10px auto 12px}
 .screen-type{font-size:10px;padding:2px 7px}
 .screen-description{font-size:12px;line-height:1.8;margin:7px 0 12px}
 .screen-action{font-size:15px;padding:9px 15px}
 .console-controls{padding-top:18px;gap:10px}
 .console-buttons button{font-size:12px;padding:8px 4px}
 .console-left{gap:12px}.book-speaker{width:78px}
 .book-pad{grid-template-rows:repeat(3,32px);gap:2px}.book-pad button{font-size:30px}
}

.book-paper{transform-origin:right center;animation:page-open .38s ease-out}
@keyframes page-open{from{opacity:.6;transform:perspective(1200px) rotateY(-20deg)}to{opacity:1;transform:perspective(1200px) rotateY(0)}}
@media(prefers-reduced-motion:reduce){.book-paper{animation:none}}

.book-selection-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:580px){
 body[data-view=library][data-archive=hunter] .brand{min-height:44px}
 #library[data-theme=hunter] .filters button,#library[data-theme=hunter] .back-button,#library[data-theme=hunter] .search{min-height:44px}
 .console-controls{grid-template-columns:minmax(93px,1fr) minmax(20px,.35fr) 132px;gap:10px}
 .console-buttons button{min-width:44px;min-height:44px;padding:7px 2px}
 .book-pad{width:132px;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px);gap:0}
 .book-pad button{font-size:35px;min-height:44px}
}
@media(max-width:360px){
 .console-controls{grid-template-columns:minmax(93px,1fr) 132px;gap:10px}
 .console-slot{display:none}
}

img.book-art{object-fit:cover}
@media(min-width:901px) and (min-height:821px){.book-paper{padding-left:60px;padding-right:42px}}
@media(min-width:1500px) and (min-height:821px){.book-paper{padding-left:76px;padding-right:42px}}
@media(min-width:901px) and (max-height:820px){#library[data-theme=hunter]{padding-bottom:4px}}
@media(min-width:901px) and (min-height:821px){#library[data-theme=hunter]{padding-bottom:12px}}

@media(min-width:901px) and (max-width:1250px) and (min-height:821px){.card-header{font-size:11px;gap:4px}.program-card[data-work=book] .card-name{font-size:10px}}
