/* 4.23.0: isolated catalog, verified reviews and per-purchase documents. */
.km423-contents.km423-contents.km423-contents{width:100%!important;max-width:1500px!important;min-width:0;margin-inline:auto!important;padding:22px 16px 38px!important;box-sizing:border-box;container-type:inline-size;background:#fff;color:#183351;}
.kms5.kms5-contents-page>.kms5-public-body{width:100%;max-width:1500px;margin-inline:auto;padding-inline:0;}
.kms5.kms5-contents-page .kms5-ebook-wrap{width:100%;max-width:1500px;margin-inline:auto;}
.kms5.kms5-crm>.kms5-shell{--w:1500px;width:min(1500px,calc(100% - 32px));max-width:100%;}
:where(.km423-contents,.km423-author,.km423-purchases,.km423-invoice-list,.km423-public-reviews) *{box-sizing:border-box;min-width:0;}
.km423-contents .km423-catalog-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:22px;}
.km423-eyebrow{display:block;letter-spacing:.07em;color:#687d95;font-size:15px;}
.km423-contents .km423-catalog-head h2{margin:5px 0 0!important;font-size:23px!important;line-height:1.45!important;}
.km423-shelf.km423-shelf{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:30px 24px!important;width:100%!important;padding:0!important;margin:0!important;align-items:stretch!important;overflow:visible!important;}
.km423-book.km423-book{display:flex!important;flex-direction:column;align-items:center;min-width:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:none!important;border:0!important;}
.km423-cover.km423-cover{position:relative;display:flex!important;align-items:center;justify-content:center;width:min(100% - 24px,224px)!important;aspect-ratio:2/3;margin:0 auto 14px!important;padding:0!important;background:#edf1f6;border:1px solid #e1e7ee;border-radius:4px 12px 12px 4px;overflow:hidden;box-shadow:-5px 3px 0 #e1e5eb,0 10px 25px #19385912;text-decoration:none!important;line-height:1.4!important;}
.km423-cover img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;max-width:100%;margin:0!important;border-radius:0!important;}
.km423-cover-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;height:100%;color:#355170;background:linear-gradient(145deg,#eef3f9,#d5e1ed);font-size:20px;line-height:1.7;}
.km423-isbn.km423-isbn{position:absolute;right:8px;top:8px;max-width:calc(100% - 16px);display:inline-block;padding:4px 9px;border:1px solid #dce5ed;border-radius:7px;background:#ffffffed;color:#254666;white-space:nowrap;font-size:15px!important;line-height:1.4!important;}
.km423-book-copy.km423-book-copy{display:flex!important;flex:1;flex-direction:column;gap:8px;width:100%!important;max-width:none!important;margin:0!important;padding:14px 15px 12px!important;border:1px solid #e0e7f0;border-radius:15px;background:#fff;box-shadow:0 8px 24px #15335307;text-align:left!important;}
.km423-tags.km423-tags{display:flex;flex-wrap:wrap;gap:5px;margin:0!important;align-content:start;}
.km423-tags.km423-tags>span{display:inline-block;flex:0 1 auto;min-width:0;max-width:100%!important;width:auto!important;padding:3px 8px;border:1px solid #e1e8ef;border-radius:6px;background:#f7f9fc;color:#526d89;font-size:15px!important;line-height:1.35!important;white-space:nowrap!important;writing-mode:horizontal-tb!important;overflow:hidden!important;text-overflow:ellipsis;word-break:normal!important;}
.km423-book.km423-book.km423-book .km423-book-copy h3{margin:0!important;font-size:16px!important;line-height:1.5!important;font-weight:600!important;min-height:48px!important;letter-spacing:-.015em;}
.km423-book.km423-book.km423-book .km423-book-copy h3>a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:3em;white-space:normal!important;font-size:inherit!important;line-height:inherit!important;color:#183658!important;text-decoration:none!important;overflow-wrap:anywhere;word-break:normal;}
.km423-book-meta.km423-book-meta{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0!important;font-size:15px;line-height:1.45;color:#61748a;}
.km423-book-meta>span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.km423-pages{flex:0 0 auto;white-space:nowrap;}
.km423-book-foot.km423-book-foot{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-top:auto;padding-top:10px;border-top:1px solid #edf1f5;}
.km423-book-foot.km423-book-foot>strong{font-size:17px!important;line-height:1.4!important;font-weight:600;color:#15385f;white-space:nowrap;}
.km423-book-foot.km423-book-foot .km423-review-link{display:inline-flex;align-items:center;margin:0;padding:0;min-height:30px;border:0;background:none;box-shadow:none;color:#647990;font-size:15px!important;line-height:1.4!important;cursor:pointer;}
.km423-rating{display:inline-flex;align-items:center;gap:4px;font-size:15px;line-height:1.4;white-space:nowrap;}
.km423-rating>span{color:#a77822;}.km423-rating b{font-weight:600;color:#294c72;}.km423-rating small{color:#6f8298;font-size:15px!important;}
.km423-unrated{color:#74859a;}
.km423-book-foot.km423-book-foot .km423-detail-link{margin-left:auto;display:inline-flex;align-items:center;min-height:32px;padding:4px 9px;border:1px solid #dce5ef;border-radius:7px;background:#f6f9fd;font-size:15px!important;line-height:1.4!important;color:#214a76;text-decoration:none!important;white-space:nowrap;}
.km423-pagination.km423-pagination{display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap;margin-top:28px;padding:0;}
.km423-pagination :is(a,span){display:inline-flex;justify-content:center;align-items:center;min-width:38px;min-height:38px;padding:6px 11px;border:1px solid #dfe6ef;border-radius:9px;font-size:15px;line-height:1.4;color:#315575;text-decoration:none!important;}
.km423-pagination [aria-current]{background:#173858;border-color:#173858;color:#fff;}
/* Detail: remove inherited two-track layout; all lower modules use full width. */
.kmmc-market-modal.kmmc-market-modal .kmmc-v422-ebook-detail{display:block!important;grid-template-columns:minmax(0,1fr)!important;padding:24px!important;width:100%;max-width:100%;min-width:0;}
.kmmc-market-modal .kmmc-v422-ebook-sections{margin-top:20px!important;align-items:stretch!important;}
.kmmc-market-modal .kmmc-v422-ebook-hero{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;}
.kmmc-market-modal .kmmc-v422-hero-card.is-cover .kmmc-v4-ebook-cover{max-width:280px!important;}
.kmmc-market-modal.kmmc-market-modal .km423-author,.kmmc-market-modal.kmmc-market-modal .km423-public-reviews{min-width:0;max-width:100%;margin:24px 0 0;padding:22px;border:1px solid #e0e7ef;border-radius:17px;background:#fff;box-shadow:0 6px 20px #16334c04;}
.km423-author-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;}
.km423-author-head h3{font-size:20px!important;line-height:1.4!important;margin:5px 0 6px!important;color:#163754;}
.km423-author-head p{margin:0!important;font-size:15px!important;line-height:1.6!important;color:#657b92;}
.km423-author-head .km423-rating{margin-left:10px;}
.km423-carousel-controls{display:flex;align-items:center;gap:10px;}
.km423-carousel-controls button{display:grid;place-items:center;width:40px;height:40px;padding:0!important;border:1px solid #dce4ef;border-radius:50%;background:#fff;color:#173b5c;font-size:20px!important;line-height:1!important;cursor:pointer;}
.km423-carousel-controls button:disabled{opacity:.38;cursor:default;}.km423-carousel-controls>span{font-size:15px;white-space:nowrap;}
.km423-author-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch;min-width:0;width:100%;}
.km423-author-track .km423-cover{width:min(100% - 20px,156px)!important;margin-bottom:12px!important;}
.km423-author-track .km423-book-copy{padding:12px!important;}
.km423-author-track .km423-book-foot{gap:7px;}.km423-author-track .km423-review-link{margin-left:auto!important;}
.km423-public-reviews>header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px;}
.km423-public-reviews h3{font-size:20px!important;line-height:1.5!important;margin:0!important;}
.km423-public-reviews>article{padding:14px 0;border-top:1px solid #e9eef5;}
.km423-public-reviews>article>div{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;}
.km423-public-reviews>article>div>b{color:#99701f;font-size:16px;letter-spacing:1px;white-space:nowrap;}
.km423-public-reviews>article>div>span{font-size:15px;color:#75869b;}
.km423-public-reviews.km423-public-reviews p{margin:7px 0 0!important;font-size:15px!important;line-height:1.7!important;overflow-wrap:anywhere;color:#475d73;}
.km423-public-reviews>button{border:1px solid #dce5f0;border-radius:8px;padding:9px 15px;background:#f5f8fc;color:#21496f;font:inherit;cursor:pointer;}
.km423-error{padding:12px;border-left:3px solid #b7364c;background:#fff5f6;color:#8c2735;margin-top:12px;}
/* Purchase/document cards remain inside the existing three-menu portal. */
.km423-purchases,.km423-invoice-list{display:grid;gap:18px;}
.km423-purchase,.km423-invoice-card{min-width:0;max-width:100%;padding:22px;border:1px solid #dee6ef;border-radius:17px;background:#fff;box-shadow:0 10px 24px #16334c04;}
.km423-purchase>header,.km423-invoice-card>header{display:flex;justify-content:space-between;align-items:start;gap:20px;border-bottom:1px solid #e6edf4;padding:0 0 15px;margin:0 0 16px;}
.km423-purchase>header>div:first-child,.km423-invoice-card>header>div:first-child{flex:1;min-width:0;}
.km423-purchase>header>div:last-child,.km423-invoice-card>header>div:last-child{display:flex;flex-wrap:wrap;justify-content:end;align-items:center;gap:8px 14px;}
.km423-purchase>header h3,.km423-invoice-card>header h3{font-size:18px!important;line-height:1.5!important;margin:5px 0 0!important;overflow-wrap:anywhere;}
.km423-purchase>header small,.km423-invoice-card>header small{color:#687e95;font-size:15px!important;overflow-wrap:anywhere;}
.km423-purchase>header strong,.km423-invoice-card>header strong{display:block;color:#183c64;font-size:20px!important;line-height:1.4!important;white-space:nowrap;}
.km423-purchase>header p,.km423-invoice-card>header p{margin:5px 0 0;color:#6e8298;}
.km423-purchase-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.km423-actions.km423-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0!important;}
.km423-button.km423-button.km423-button{display:inline-flex;align-items:center;justify-content:center;min-height:43px;max-width:100%;margin:0;padding:9px 15px;border:1px solid #173857;border-radius:9px;background:#173857;color:#fff!important;font-size:15px!important;line-height:1.45!important;font-weight:500;text-decoration:none!important;white-space:normal;overflow-wrap:anywhere;cursor:pointer;box-shadow:none;}
.km423-button.km423-button.is-secondary{background:#f7f9fd;color:#21496d!important;border-color:#dce5ef;}
.km423-text-link.km423-text-link{font-size:15px!important;line-height:1.5!important;color:#2d567f!important;text-decoration:underline;text-underline-offset:3px;padding:8px 2px;}
.km423-help.km423-help{font-size:15px!important;line-height:1.7!important;color:#6a7d93;margin:10px 0!important;overflow-wrap:anywhere;}
.km423-review-editor,.km423-tax-form{margin:16px 0 0;border:1px solid #dde6f0;border-radius:12px;background:#fbfcff;overflow:hidden;}
.km423-review-editor>summary,.km423-tax-form>summary{padding:13px 16px;color:#214566;font-size:16px;line-height:1.5;cursor:pointer;list-style-position:inside;}
.km423-review-editor>form,.km423-tax-form>form{margin:0!important;padding:6px 16px 17px;max-width:100%;}
.km423-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;}
.km423-form-grid .km423-field:nth-child(6){grid-column:1/-1;}
.km423-field.km423-field{display:block;min-width:0;margin:0;}
.km423-field>span{display:block;color:#2e4a64;font-size:15px;line-height:1.5;margin-bottom:6px;}
.km423-field.km423-field :is(input,textarea){display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:43px;padding:10px 12px;border:1px solid #ccd8e5;border-radius:8px;background:#fff;color:#173652;font-size:16px!important;line-height:1.55!important;font-family:inherit;}
.km423-field textarea{resize:vertical;}
.km423-stars-input.km423-stars-input{display:flex!important;flex-wrap:wrap;gap:8px;border:0!important;padding:0!important;margin:0 0 14px!important;}
.km423-stars-input legend{color:#3d5770;font-size:15px;padding:0;margin-bottom:8px;}
.km423-stars-input label{position:relative;display:flex;align-items:center;gap:5px;min-height:43px;margin:0!important;padding:8px 12px;border:1px solid #d8e2ed;border-radius:8px;background:#fff;font-size:15px;cursor:pointer;}
.km423-stars-input label:has(input:checked){border-color:#426285;background:#eef4fb;box-shadow:0 0 0 1px #426285;}
.km423-stars-input label>span[aria-hidden]{color:#a17520;font-size:20px;line-height:1;}
.km423-stars-input input{appearance:auto;width:16px!important;min-width:16px!important;height:16px!important;margin:0!important;accent-color:#20476f;}
.km423-consent.km423-consent{display:flex;align-items:flex-start;gap:9px;margin:16px 0 10px;font-size:15px!important;line-height:1.65!important;}
.km423-consent input{flex:0 0 17px;width:17px!important;height:17px!important;min-width:17px!important;margin-top:3px;}
.km423-tax-state{padding:12px 14px;border-left:3px solid #b3394b;background:#f8fafc;border-radius:0 8px 8px 0;color:#3a536e;overflow-wrap:anywhere;}
.km423-tax-admin{min-width:230px;max-width:550px;margin-top:8px;}
.km423-tax-admin summary{cursor:pointer;color:#254e75;}
.km423-tax-admin dl{display:block!important;margin:10px 0!important;}
.km423-tax-admin dl>div{display:grid!important;grid-template-columns:100px minmax(0,1fr);gap:10px;margin:0;padding:6px 0;border-bottom:1px solid #e7edf4;}
.km423-tax-admin dt,.km423-tax-admin dd{margin:0!important;line-height:1.55!important;overflow-wrap:anywhere;}
:where(.km423-book,.km423-author,.km423-purchase,.km423-invoice-card) :focus-visible{outline:2px solid #356597;outline-offset:3px;}
@media(max-width:1023px){.km423-shelf.km423-shelf{grid-template-columns:repeat(2,minmax(0,1fr))!important;}.km423-book-foot{gap:7px!important;}}
@media(max-width:780px){
 .km423-contents.km423-contents.km423-contents{padding:16px 12px 28px!important;}
 .km423-cover.km423-cover{width:min(100% - 24px,210px)!important;}
 .km423-book-copy.km423-book-copy{padding:12px!important;gap:7px;}
 .km423-book.km423-book.km423-book .km423-book-copy h3{font-size:15px!important;min-height:45px!important;}
 .km423-tags.km423-tags>span,.km423-book-meta.km423-book-meta,.km423-rating,.km423-rating small,.km423-book-foot.km423-book-foot .km423-review-link,.km423-book-foot.km423-book-foot .km423-detail-link,.km423-isbn.km423-isbn{font-size:13px!important;}
 .km423-book-foot.km423-book-foot>strong{font-size:16px!important;}
 .kmmc-market-modal.kmmc-market-modal .kmmc-v422-ebook-detail{padding:16px!important;}
 .kmmc-market-modal .kmmc-v422-ebook-hero{grid-template-columns:1fr!important;}
 .kmmc-market-modal.kmmc-market-modal .km423-author,.kmmc-market-modal.kmmc-market-modal .km423-public-reviews{padding:16px!important;}
 .km423-author-head{gap:12px;}.km423-author-head h3,.km423-public-reviews h3{font-size:18px!important;}
 .km423-author-head p,.km423-public-reviews.km423-public-reviews p,.km423-public-reviews>article>div>span{font-size:14px!important;}
 .km423-author-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:10px;}
 .km423-author-track>.km423-book{flex:0 0 100%;scroll-snap-align:start;}
 .km423-author-track .km423-cover{width:158px!important;}
 .km423-purchase,.km423-invoice-card{padding:16px;}
 .km423-purchase>header,.km423-invoice-card>header{flex-direction:column;gap:10px;}
 .km423-purchase>header>div:last-child,.km423-invoice-card>header>div:last-child{justify-content:start;}
 .km423-purchase>header small,.km423-invoice-card>header small{font-size:13px!important;}
 .km423-purchase>header h3,.km423-invoice-card>header h3{font-size:17px!important;}
 .km423-form-grid{grid-template-columns:1fr;gap:13px;}.km423-form-grid .km423-field:nth-child(6){grid-column:auto;}
 .km423-field>span,.km423-help.km423-help,.km423-consent.km423-consent{font-size:14px!important;}
 .km423-button.km423-button.km423-button,.km423-text-link.km423-text-link{font-size:14px!important;}
 .km423-review-editor>form,.km423-tax-form>form{padding:5px 12px 14px;}
 .km423-stars-input.km423-stars-input{gap:6px;}.km423-stars-input label{padding:7px 8px;min-height:40px;font-size:14px;}
 .km423-stars-input label>span[aria-hidden]{font-size:17px;}
}
@media(max-width:575px){.km423-shelf.km423-shelf{grid-template-columns:minmax(0,1fr)!important;gap:26px!important;}.km423-contents .km423-catalog-head{align-items:start;flex-direction:column;gap:7px;}}
@container (max-width:575px){.km423-shelf.km423-shelf{grid-template-columns:minmax(0,1fr)!important;}}
@media(prefers-reduced-motion:reduce){.km423-author-track{scroll-behavior:auto!important;}}

.km423-contents.km423-contents .km423-catalog-head{display:block;margin:4px 0 24px;padding:0 0 20px;border-bottom:1px solid #e7edf4;}
.km423-contents .km423-catalog-head h1{font-size:28px!important;margin:7px 0 10px!important;line-height:1.35!important;}
.km423-catalog-head>span{color:#6a7f95;letter-spacing:.07em;font-size:15px;}
.km423-contents .km423-catalog-head p{font-size:15px!important;margin:0!important;color:#62768e;}
.km423-catalog-count{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 22px;}
.km423-catalog-count h2{margin:0!important;font-size:21px!important;line-height:1.45!important;}
.km423-catalog-count>span{color:#6e8095;font-size:15px;white-space:nowrap;}
@media(max-width:575px){.km423-catalog-count{align-items:start;flex-direction:column;gap:5px;}.km423-catalog-count h2{font-size:19px!important;}}
.kmmc-market-modal .kmmc-v422-quick-price>button{border:1px solid #193b62!important;background:#193b62!important;color:#fff!important;border-radius:10px!important;min-height:44px!important;font-size:15px!important;cursor:pointer;}
.kmmc-market-modal .kmmc-v422-ebook-detail .kmmc-v4326-cover-isbn{display:none!important;}

/* v4.24.2: CONTENTS already has its own page heading; keep only the catalog count. */
.km423-catalog-count.km423-catalog-count--titleless{
  justify-content:flex-end;
}
@media(max-width:575px){
  .km423-catalog-count.km423-catalog-count--titleless{
    flex-direction:row;
    align-items:center;
    justify-content:flex-end;
    gap:0;
  }
}
