.library-page{background:#f5f8fb;color:#16334b}
.library-page .library-header{height:68px;padding:0 max(24px,calc((100vw - 1120px)/2));background:#fff;gap:20px;border-bottom:1px solid #e5ebee}
.library-page .brand{font-size:22px;gap:8px;letter-spacing:-.6px}
.library-page .brand img{width:30px;height:34px}
.library-page nav{gap:20px;align-items:center}
.library-page nav a{font-size:12px}
.library-page .library-account-link{display:inline-flex;align-items:center;gap:8px;background:#16334b;color:white;padding:9px 15px;border-radius:30px}
.library-account-link svg{width:16px;height:16px;fill:none;stroke:#77d5c7;stroke-width:1.8}
.library-page .library-main{max-width:none;margin:0;padding:0}
.library-intro{background:#fff;border-bottom:1px solid #e8eef1;padding:38px 24px 30px}
.library-intro-inner{max-width:600px;margin:auto}
.library-page .library-intro h1{font-size:clamp(28px,3vw,37px);font-weight:600;line-height:1.16;letter-spacing:-1.1px;margin:0 0 12px}
.library-intro h1 span{background:linear-gradient(transparent 67%,#bfebe1 67%);padding-right:4px}
.library-intro p{font-size:14px;line-height:1.6;color:#6b7c8c;margin:0}
.library-format{display:flex;align-items:center;gap:7px;font-size:11px;color:#47776f;font-weight:500;margin-top:18px}
.library-format svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.library-catalog-wrap{max-width:1168px;margin:auto;padding:18px 24px 40px;min-height:465px}
.library-tools{margin-bottom:18px}
.library-search{position:relative;display:block;margin:0 0 10px}
.library-search svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:16px;height:16px;fill:none;stroke:#8194a5;stroke-width:1.8;pointer-events:none}
.library-page .library-search input{width:100%;background:#edf3f8;border:1px solid #e0e9f0;padding:11px 16px 11px 41px;border-radius:28px;font-size:12px;line-height:1.5}
.library-search input::placeholder{color:#8799aa}
.library-page .library-search input:focus{background:#fff}
.library-categories{display:flex;gap:8px;overflow-x:auto;padding:1px 1px 3px}
.library-page .library-categories button{min-width:86px;min-height:64px;border:1px solid #dde6ec;border-radius:12px;background:#fff;color:#16334b;padding:9px 14px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;line-height:1.4;font-size:10px;font-weight:600}
.library-categories button>span:first-child{font-size:21px;line-height:1.2;font-weight:400;color:#527189}
.library-page .library-categories button[aria-pressed="true"]{background:#16334b;border-color:#16334b;color:#fff;box-shadow:0 3px 8px #16334b18}
.library-categories button[aria-pressed="true"]>span:first-child{color:#77d5c7}
.library-results-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#77899a;font-size:11px;margin-bottom:12px}
.library-results-heading p{margin:0;font-weight:500}
.library-results-heading>span{font-size:10px}
.library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.library-card{min-width:0;display:flex;flex-direction:column;border:1px solid #dee7ed;border-radius:16px;background:white;overflow:hidden;transition:box-shadow .15s,border-color .15s}
.library-card:hover{box-shadow:0 6px 22px #16334b0a;border-color:#adc9c6}
.library-cover{position:relative;display:block;aspect-ratio:1/1.27;background:linear-gradient(140deg,#d7ecec,#ecf4f7);text-decoration:none;overflow:hidden}
.library-cover img{display:block;width:100%;height:100%;object-fit:contain;padding:13px 14px 7px}
.library-cover-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;height:100%;padding:26px 20px;text-align:center;color:#1b5866;font-size:16px;font-weight:600;line-height:1.35}
.library-cover-placeholder small{font-size:9px;letter-spacing:2px;font-weight:500;margin-bottom:20px}
.library-cover-tag{position:absolute;top:10px;left:10px;background:#fffefc;padding:4px 9px;border-radius:20px;font-size:8px;line-height:1.1;font-weight:600;letter-spacing:.3px;color:#16334b;box-shadow:0 1px 5px #16334b12}
.library-card-body{padding:13px 13px 14px;display:flex;flex:1;flex-direction:column}
.library-card h2{font-size:12px;line-height:1.4;letter-spacing:-.15px;margin:0 0 4px;font-weight:600}
.library-card h2 a{color:#16334b;text-decoration:none}
.library-card-category{font-size:10px;color:#7b8b9a;line-height:1.4;margin:0 0 4px}
.library-card-summary{font-size:10px;line-height:1.5;color:#47776f;margin:0 0 15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.library-card-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto}
.library-card-price{font-size:14px;line-height:1.4;font-weight:700;white-space:nowrap}
.library-page .library-card-cta{font-size:10px;font-weight:600;line-height:1.2;border-radius:24px;padding:9px 12px;background:#086663;color:#fff;text-decoration:none}
.library-card-cta:hover{background:#075753}
.library-empty{background:white;border:1px dashed #cddce4;border-radius:14px;padding:30px 20px;font-size:13px;text-align:center;color:#637b8c}
.library-about{background:#fff;text-align:center;padding:32px 24px 34px;border-top:1px solid #e8eef1}
.library-about img{display:block;margin:0 auto 8px;object-fit:contain}
.library-page .library-about h2{font-size:18px;line-height:1.4;letter-spacing:-.3px;margin:0 0 10px}
.library-about p{max-width:620px;margin:0 auto 10px;font-size:12px;color:#788997;line-height:1.7}
.library-about a{font-size:11px;color:#086663;text-decoration:none;font-weight:500}
.library-page .library-footer{font-size:10px;padding:25px 20px;color:#738497;background:#f5f8fb}
.library-footer p{margin:7px 0 0}
.library-footer a{color:inherit;text-underline-offset:3px}
.library-page .library-account-panel,.library-page .library-checkout-panel{max-width:850px;margin:32px auto;padding:30px;border-radius:16px}
.library-page .library-account-panel h1,.library-page .library-checkout-panel h1{font-size:29px;line-height:1.25;letter-spacing:-.8px;margin:8px 0 18px}
.library-page .library-account-panel h2{font-size:19px;letter-spacing:-.4px;margin:25px 0 12px}
.library-page .library-account-panel p,.library-page .library-checkout-panel p{font-size:13px}
.library-back{display:block;margin-bottom:23px;font-size:11px;color:#607787;text-decoration:none}
.library-checkout-summary{display:flex;gap:14px;align-items:center;border:1px solid #e3eaf0;border-radius:12px;background:#f5f8fb;padding:14px;margin:20px 0}
.library-checkout-summary img{object-fit:contain}
.library-page .library-checkout-summary h2{font-size:14px;line-height:1.4;letter-spacing:0;margin:0 0 5px}
.library-checkout-summary strong{font-size:17px}
.library-checkout-panel a:not(.library-back){color:#086663}
.library-page #global-state:not(:empty){max-width:1120px;margin:18px auto;padding:12px 24px;font-size:12px}
.library-page #global-state:empty{margin:0}
.library-sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.library-skip{position:fixed;top:8px;left:8px;z-index:10;background:#16334b;color:#fff;padding:10px 14px;border-radius:8px;transform:translateY(-150%)}
.library-skip:focus{transform:translateY(0)}
@media(max-width:900px){.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.library-page .library-account-panel,.library-page .library-checkout-panel{margin:24px}}
@media(max-width:600px){.library-page .library-header{height:60px;padding:0 16px;gap:10px}.library-page .brand{font-size:19px;gap:5px}.library-page .brand img{width:26px;height:29px}.library-page nav{gap:12px}.library-page nav a{font-size:10px}.library-page .library-account-link{padding:8px 11px;gap:5px}.library-account-link svg{width:14px;height:14px}.library-intro{padding:27px 20px 24px}.library-intro-inner{max-width:420px}.library-page .library-intro h1{font-size:29px;letter-spacing:-.7px}.library-intro p{font-size:12px}.library-format{font-size:10px;margin-top:13px}.library-desktop-break{display:none}.library-catalog-wrap{padding:15px 14px 30px;min-height:420px}.library-tools{margin-bottom:15px}.library-page .library-categories button{min-height:59px;min-width:78px;font-size:9px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.library-card{border-radius:12px}.library-cover img{padding:13px 8px 6px}.library-card-body{padding:10px}.library-card h2{font-size:11px}.library-card-category,.library-card-summary{font-size:9px}.library-card-price{font-size:13px}.library-page .library-card-cta{font-size:9px;padding:8px 10px}.library-card-bottom{gap:6px}.library-cover-tag{font-size:7px;top:8px;left:8px;padding:4px 7px}.library-about{padding:27px 22px}.library-about p{font-size:11px}.library-page .library-about h2{font-size:17px}.library-page .library-account-panel,.library-page .library-checkout-panel{margin:20px 14px;padding:22px 18px}.library-page .library-account-panel h1,.library-page .library-checkout-panel h1{font-size:25px}.library-page .account-bar{gap:12px;align-items:flex-start}.library-page #identity{overflow-wrap:anywhere}.library-page .order{flex-wrap:wrap}.library-page .order button{padding:10px 12px;font-size:11px}.library-page .library-search input{font-size:11px}.library-results-heading>span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.library-card{transition:none}}
.library-page .library-cart-open{display:inline-flex;align-items:center;gap:7px;background:#16334b;color:#fff;border-radius:30px;padding:9px 14px;font-size:11px;white-space:nowrap}
.library-cart-open svg{width:16px;height:16px;fill:none;stroke:#80dacb;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.library-cart-open>span{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;border-radius:20px;background:#bcefe2;color:#16334b;font-size:10px;font-weight:700}
.library-tier-intro{margin-top:18px;max-width:520px}
.library-tier-intro>p{font-size:10px;font-weight:500;color:#6b7c8c;margin-bottom:8px}
.library-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.library-tiers>div{background:#f2f6fa;border:1px solid #e2eaf0;border-radius:9px;padding:10px 12px;display:flex;flex-direction:column;gap:1px}
.library-tiers strong{font-size:19px;line-height:1.2;color:#16334b}
.library-tiers span{font-size:9px;line-height:1.3;color:#6d8091}
.library-tiers>div[data-active="true"]{border-color:#37a995;background:#ebfaf5;box-shadow:0 3px 10px #1677660e}
.library-tiers>div[data-active="true"] strong{color:#086663}
.library-card[data-selected="true"]{border-color:#28a592;box-shadow:0 3px 13px #168d7810}
.library-card[data-selected="true"] .library-card-cta{background:#e9f3f1;color:#086663}
.library-card-details{align-self:flex-start;font-size:10px;line-height:1.4;color:#68818f;margin-top:10px;text-decoration:underline;text-underline-offset:3px}
.library-page[data-has-cart="true"]{padding-bottom:103px}
.library-cart-bar{position:fixed;bottom:0;left:0;width:100%;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fffffff7;border-top:1px solid #dfebe8;box-shadow:0 -4px 20px #16334b0b;padding:12px max(24px,calc((100vw - 1120px)/2));backdrop-filter:blur(10px)}
.library-cart-bar>div{max-width:620px;flex:1}
#library-cart-bar-count{display:block;font-size:10px;line-height:1.35;color:#6b7e8b}
#library-cart-bar-total{font-size:18px;line-height:1.4}
#library-cart-bar-subtotal{font-size:11px;color:#91a1ac;margin-left:5px}
#library-cart-progress{font-size:10px;line-height:1.4;margin:1px 0 4px;color:#4d796f}
#library-cart-progress-meter{display:block;width:100%;height:3px;border:none;border-radius:10px;background:#eaf1f5;color:#239b87;accent-color:#239b87}
#library-cart-progress-meter::-webkit-progress-bar{background:#eaf1f5;border-radius:10px}
#library-cart-progress-meter::-webkit-progress-value{background:#239b87;border-radius:10px}
.library-page #library-cart-review{border-radius:30px;padding:12px 21px;white-space:nowrap;font-size:12px}
.library-cart-dialog{position:fixed;inset:0 0 0 auto;width:min(470px,100%);height:100%;max-height:100%;max-width:100%;margin:0;border:0;border-left:1px solid #dce8e7;background:white;color:#16334b;padding:25px;overflow-y:auto;box-shadow:-15px 0 50px #16334b12}
.library-cart-dialog::backdrop{background:#102b40a8}
.library-cart-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #e4ecef;padding-bottom:16px;margin-bottom:7px}
.library-cart-dialog h2{font-size:26px;line-height:1.25;margin:3px 0 0;letter-spacing:-.5px}
.library-page #library-cart-close{font-size:27px;background:#f0f5f6;color:#527386;width:36px;height:36px;padding:0;line-height:1;border-radius:50%}
.library-cart-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e6edef;padding:18px 0}
.library-cart-item>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.library-cart-item strong{font-size:12px;line-height:1.4;font-weight:600;overflow-wrap:anywhere}
.library-cart-item span{font-size:12px;color:#667e8d;line-height:1.5}
.library-page .library-cart-remove{background:none;color:#627d8b;font-size:10px;padding:8px 0;text-decoration:underline;text-underline-offset:3px;flex-shrink:0}
.library-cart-totals{background:#f5f8fa;padding:16px;border-radius:12px;margin:21px 0 15px}
.library-cart-totals>div{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding:4px 0}
.library-cart-totals .library-cart-discount{color:#086663}
.library-cart-final-total{border-top:1px solid #dce7eb;margin-top:10px;padding-top:12px!important}
.library-cart-final-total strong{font-size:17px}
.library-cart-message{font-size:12px;line-height:1.55;color:#086663;margin:15px 0}
.library-cart-note{font-size:10px;line-height:1.5;color:#7b8d99;margin:14px 0}
.library-page #library-cart-checkout{display:block;text-align:center;border-radius:30px;font-size:12px;padding:14px 15px}
.library-page .library-cart-continue{display:block;width:100%;background:white;color:#5d7888;padding:14px 10px;font-size:11px;text-decoration:underline;text-underline-offset:3px}
.library-cart-empty{font-size:13px;color:#738b99;padding:24px 0}
@media(max-width:600px){.library-page .library-header nav{gap:9px}.library-page .library-header nav>a[data-library-route="biblioteca"]{display:none}.library-page .library-cart-open{padding:8px 10px;font-size:10px;gap:5px}.library-cart-open svg{width:14px;height:14px}.library-tier-intro{margin-top:16px}.library-tiers>div{padding:9px}.library-tiers strong{font-size:17px}.library-tiers span{font-size:8px}.library-card-details{font-size:9px}.library-cart-bar{padding:11px 14px;gap:10px}.library-page #library-cart-review{font-size:10px;padding:11px 13px}#library-cart-bar-total{font-size:16px}#library-cart-progress{font-size:9px}.library-cart-dialog{padding:21px 20px}.library-page[data-has-cart="true"]{padding-bottom:104px}}
@media(max-width:380px){.library-page .library-header{padding:0 12px}.library-page .brand{font-size:17px}.library-page .brand img{width:22px;height:26px}.library-page .library-header nav{gap:7px}.library-page .library-header nav>a{font-size:9px}.library-cart-open svg{display:none}.library-page .library-cart-open{padding:8px 9px;gap:5px}.library-page #library-cart-review{padding:10px 11px}}
