.library-page{background:#fff;color:#142c50}.library-page .container{max-width:1420px}.library-page #navigation a[aria-current]{color:#086cff;border-bottom:2px solid #086cff;padding-bottom:8px}.library-hero{background:radial-gradient(ellipse at 80% 20%,#dceeff,transparent 65%),#f0f8ff;overflow:hidden}.breadcrumb{font-size:.85rem;color:#73839b;padding:18px 0}.breadcrumb a:hover{color:#086cff}.library-intro{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:32px;padding:24px 0 32px}.library-intro h1{font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.12;letter-spacing:-.045em;color:#0b2448;margin:12px 0 20px}.library-intro p{font-size:1rem;line-height:1.65;max-width:560px;color:#65758f}.library-steps{display:flex;gap:24px;margin-top:28px;list-style:none;padding:0;font-size:.85rem;font-weight:600}.library-steps li{display:flex;align-items:center;gap:9px}.library-steps span{display:grid;place-items:center;background:#fff;color:#0875ff;border:1px solid #d9eaff;border-radius:50%;width:36px;height:36px;flex-shrink:0}.library-hero-visual{display:flex;justify-content:center;align-items:center;gap:20px;min-height:320px;position:relative}.library-hero-visual .template-phone{max-width:164px;min-height:280px;transform:rotate(-7deg);box-shadow:0 16px 35px #204c7524}.library-hero-visual .template-phone:nth-child(2){transform:rotate(7deg) translateY(12px)}.library-hero-visual .phone-screen{min-height:266px}.library-hero-visual .phone-message p{font-size:.75rem}.library-hero-visual .phone-message strong{font-size:.75rem}.library-hero-visual .phone-cta{font-size:.7rem}.library-search{display:flex;gap:12px;margin:28px 0}.library-search input{width:100%;border:1px solid #dce6f2;border-radius:10px;padding:16px 20px;background:#fff;font:inherit;box-shadow:0 3px 15px #1d64bc06}.library-search .button{min-width:125px}.library-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;align-items:start}.library-sidebar{min-width:0}.filter-panel{border:1px solid #e0e9f3;border-radius:12px;padding:20px 17px}.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:18px}.filter-heading h2{font-size:1rem;margin:0}.filter-heading button{color:#0875ff;border:0;background:none;font-size:.8rem}.filter-panel fieldset{border:0;padding:0;margin:0 0 23px;min-width:0}.filter-panel fieldset:last-child{margin:0}.filter-panel legend{font-size:.87rem;font-weight:700;margin-bottom:12px}.filter-panel label{display:flex;align-items:flex-start;gap:9px;font-size:.875rem;line-height:1.5;color:#677990;margin:10px 0;cursor:pointer}.filter-panel input{accent-color:#086cff;width:16px;height:16px;margin:2px 0 0;flex-shrink:0}.sidebar-academy{background:linear-gradient(135deg,#eff8ff,#e3f2ff);border-radius:12px;padding:23px 18px;margin-top:18px}.sidebar-academy h3{font-size:1.05rem;line-height:1.4;margin:10px 0}.sidebar-academy p{font-size:.87rem;color:#687f99}.sidebar-academy a{color:#086cff;font-weight:700;font-size:.875rem}.sidebar-academy .template-illustration{width:64px;height:64px}.library-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.library-tabs{display:flex;gap:7px;flex-wrap:wrap}.library-tabs button{font:inherit;font-size:.875rem;padding:10px 14px;background:white;color:#526885;border:1px solid #e0e7f1;border-radius:8px}.library-tabs .active{background:#086cff;color:#fff;border-color:#086cff}.library-toolbar select{font:inherit;font-size:.85rem;padding:10px;border:1px solid #e0e7f1;border-radius:8px;background:white;color:#526885;max-width:100%}.result-count{font-size:.85rem;color:#74859b;text-align:right;margin:0 0 16px}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}.library-card{border:1px solid #e4ecf5;border-radius:13px;overflow:hidden;background:white;min-width:0;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.library-card:hover{box-shadow:0 10px 28px #123b6a12;transform:translateY(-3px)}.library-cover{display:flex;align-items:center;justify-content:center;gap:3px;background:linear-gradient(130deg,#eaf7ff,#d8efff);padding:18px 10px;min-height:300px;overflow:hidden;position:relative}.tone-green .library-cover{background:linear-gradient(130deg,#edfdf6,#d5f3e8)}.tone-orange .library-cover{background:linear-gradient(130deg,#fff7eb,#ffe9cd)}.tone-purple .library-cover{background:linear-gradient(130deg,#f5f1ff,#e5e9ff)}.tone-pink .library-cover{background:linear-gradient(130deg,#fff4f6,#ffe2ed)}.library-cover .template-phone{max-width:158px;min-height:267px;width:68%;border-width:3px;border-radius:24px;transform:rotate(-5deg);flex-shrink:0;z-index:1;box-shadow:0 8px 16px #24466626}.library-cover .phone-screen{min-height:253px;border-radius:16px}.library-cover .phone-oa{font-size:.78rem;padding-top:19px}.library-cover .phone-message{padding:9px 7px;margin:4px}.library-cover .phone-message strong{font-size:.75rem;min-height:0;line-height:1.5}.library-cover .phone-message p{font-size:.75rem;line-height:1.55;margin:12px 0}.library-cover .phone-cta{font-size:.7rem;padding:9px 4px}.library-cover .phone-notch{height:12px}.cover-art{width:40%;min-width:54px;max-width:100px;position:relative;margin-left:-3px;align-self:center;transform:translateY(28px)}.cover-art .template-illustration{width:100%;height:auto;aspect-ratio:1;background-size:600% 200%;filter:drop-shadow(0 8px 5px #3061881a)}.library-card-body{padding:15px 14px 16px;display:flex;flex-direction:column;flex:1}.library-card .badge{font-size:.75rem;background:#e8f3ff;color:#2d7ae5;border-radius:8px;padding:4px 9px;align-self:flex-start}.tone-orange .badge{background:#fff0dd;color:#c97916}.tone-purple .badge{background:#efe8ff;color:#8458cd}.tone-pink .badge{background:#ffe9f0;color:#ce5780}.library-card h3{font-size:1.04rem;line-height:1.45;letter-spacing:-.025em;margin:10px 0 8px}.library-card-body p{font-size:.875rem;color:#74859e;line-height:1.65;margin:0 0 14px}.library-card .button{margin-top:auto;width:100%;min-height:40px;padding:9px 10px;font-size:.875rem;box-shadow:none;border-color:#d5e5fb;color:#086cff;background:#fff}.library-note{color:#7f8ba0;text-align:center;font-size:.8rem;line-height:1.65;margin:19px 0 14px}.library-pagination{display:flex;justify-content:center;gap:7px;margin:16px 0 30px}.library-pagination button{background:white;border:1px solid #dbe5f1;color:#547095;border-radius:7px;min-width:36px;min-height:36px;font:inherit;font-size:.85rem}.library-pagination button[aria-current]{background:#086cff;color:white;border-color:#086cff}.library-pagination button:disabled{opacity:.35;cursor:default}.library-empty{grid-column:1/-1;text-align:center;padding:50px 20px;background:#f5f9ff;border:1px dashed #cbdcf1;border-radius:12px}.library-empty h3{font-size:1.2rem}.library-empty p{color:#74859e}.library-help{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center;border-radius:15px;background:linear-gradient(110deg,#eaf6ff,#f1f9ff);padding:28px 32px;margin:36px 0 30px;overflow:hidden}.library-help h2{font-size:1.75rem;margin:0 0 10px}.library-help p{font-size:1rem;margin:0 0 20px}.library-help .button{font-size:.875rem;min-height:44px}.library-instructor{height:190px;overflow:hidden;position:relative;border-radius:14px}.library-instructor img{position:absolute;width:300%;max-width:none;height:100%;object-fit:cover;left:0;top:0}.library-faq{margin:28px 0 32px}.library-faq h2{font-size:1.65rem}.library-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.library-faq details{border:1px solid #e0e8f3;border-radius:9px;background:#fff;padding:0 16px}.library-faq summary{font-size:.875rem;padding:15px 25px 15px 0;line-height:1.5}.library-faq summary:after{top:10px}.library-faq details p{font-size:.9rem;line-height:1.7;color:#63788f}.library-page .final-cta{margin-top:35px}.library-page .final-cta h2{font-size:1.7rem}.library-page input:focus-visible,.library-page select:focus-visible{outline:3px solid #8dbdff;outline-offset:2px}.library-page .skip{z-index:100}
@media(min-width:1300px){.library-cover .template-phone{max-width:172px}.library-cover .phone-message p{font-size:.78rem}.library-cover{min-height:320px}}
@media(max-width:1100px){.library-layout{grid-template-columns:210px minmax(0,1fr);gap:20px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-intro{gap:15px}.library-steps{gap:14px}.library-hero-visual .template-phone{max-width:145px}.library-hero-visual{gap:12px}}
@media(max-width:760px){.library-intro{grid-template-columns:1fr;padding:20px 0 24px}.library-hero-visual{display:none}.library-steps{flex-wrap:wrap;font-size:.82rem}.library-layout{grid-template-columns:1fr}.filter-panel{padding:16px}.filter-panel fieldset{display:flex;flex-wrap:wrap;gap:5px 14px;margin-bottom:14px}.filter-panel label{margin:5px 0;font-size:.85rem}.filter-panel legend{margin-bottom:6px}.sidebar-academy{display:none}.library-toolbar{margin-top:4px}.library-help{grid-template-columns:1fr;padding:24px}.library-instructor{display:none}.library-faq-grid{grid-template-columns:1fr}.library-tabs button{padding:9px 12px}.library-search input{min-width:0;padding:13px}.library-search .button{min-width:90px;padding:12px}.library-help .button-row{flex-wrap:wrap}}
@media(max-width:480px){.library-grid{grid-template-columns:1fr}.library-cover{min-height:310px}.library-cover .template-phone{max-width:174px;width:60%}.library-cover .phone-message p{font-size:.8rem}.cover-art{max-width:105px}.library-intro h1{font-size:2.1rem}.library-toolbar{align-items:flex-start}.library-card h3{font-size:1.15rem}.library-card-body p{font-size:1rem}.library-card .button{font-size:.95rem}.result-count{text-align:left;margin-top:14px}.library-help h2{font-size:1.55rem}}
@media(prefers-reduced-motion:reduce){.library-card,.template-phone{transition:none;animation:none}}
 .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#catalog{scroll-margin-top:100px}
/* Template-library hero, matching the approved reference. */
.library-page .library-hero{background:radial-gradient(ellipse at 76% 64%,#dcefff 0,transparent 56%),linear-gradient(110deg,#f0f8ff,#eaf5ff 65%,#edf7ff);overflow:hidden}
.library-hero>.container{max-width:1480px;padding-left:40px;padding-right:40px}
.library-hero .breadcrumb{padding:22px 0 0;font-size:.95rem;line-height:1.5;color:#798ca4}
.library-hero .library-intro{grid-template-columns:46% 54%;gap:0;padding:18px 0 28px;min-height:405px;align-items:center}
.library-hero .library-copy{position:relative;z-index:2;padding:12px 0 0}
.library-hero .kicker{color:#0872f7;font-size:.85rem;letter-spacing:.16em;font-weight:800}
.library-hero .library-intro h1{font-size:clamp(2.2rem,3.65vw,3.5rem);font-weight:800;line-height:1.14;letter-spacing:-.045em;margin:14px 0 22px;color:#071a3d}
.library-hero .library-intro p{font-size:1.08rem;line-height:1.6;max-width:610px;margin:0;color:#526983}
.library-hero .library-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:500px;margin:27px 0 0}
.library-hero .library-steps li{display:flex;flex-direction:column;align-items:flex-start;gap:10px;position:relative;font-size:.88rem;color:#173450;line-height:1.5}
.library-hero .library-steps li:not(:last-child):after{content:'›';position:absolute;left:calc(50% + 19px);top:14px;color:#8dbff7;font-size:2.1rem;font-weight:400}
.library-hero .library-step-icon{width:66px;height:66px;border-radius:50%;background:linear-gradient(140deg,#f8fcff,#e9f5ff);border:2px solid #dbeeff;box-shadow:inset 0 0 0 3px #ffffff66;color:#0876f7;display:grid;place-items:center}
.library-step-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.library-hero .library-hero-visual{display:flex;align-items:center;justify-content:center;min-height:0;width:116%;margin-left:-5%;pointer-events:none}
.library-hero-art{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;filter:drop-shadow(0 13px 15px #2879c310)}
@media(min-width:1600px){.library-hero .library-intro{min-height:435px}.library-hero .library-intro h1{font-size:3.65rem}}
@media(max-width:1100px){.library-hero>.container{padding-left:28px;padding-right:28px}.library-hero .library-intro{min-height:345px;grid-template-columns:48% 52%}.library-hero .library-intro h1{font-size:clamp(2rem,3.6vw,2.8rem)}.library-hero .library-intro p{font-size:1rem}.library-hero .library-steps{gap:12px;margin-top:24px}.library-hero .library-steps li{font-size:.8rem}.library-hero .library-step-icon{width:55px;height:55px}.library-hero .library-steps li:not(:last-child):after{left:calc(50% + 13px);top:9px}}
@media(max-width:760px){.library-hero .library-intro{grid-template-columns:1fr;min-height:0;padding:24px 0 0}.library-hero .library-intro h1{font-size:clamp(2.1rem,5.9vw,3rem)}.library-hero .library-copy{padding-top:0}.library-hero .library-intro p{max-width:570px}.library-hero .library-steps{max-width:440px;gap:14px}.library-hero .library-steps li{font-size:.88rem}.library-hero .library-hero-visual{display:flex;width:95%;margin:8px auto -5px;max-width:570px}.library-hero .library-step-icon{width:59px;height:59px}.library-hero .library-steps li:not(:last-child):after{left:calc(50% + 17px);top:10px}}
@media(max-width:480px){.library-hero>.container{padding-left:20px;padding-right:20px}.library-hero .breadcrumb{font-size:.8rem;padding-top:16px}.library-hero .kicker{font-size:.72rem}.library-hero .library-intro h1{font-size:clamp(1.9rem,7.7vw,2.35rem);margin:12px 0 18px}.library-hero .library-intro p{font-size:1rem}.library-hero .library-steps{gap:10px;margin-top:22px}.library-hero .library-steps li{font-size:.8rem;gap:9px}.library-hero .library-step-icon{width:52px;height:52px}.library-hero .library-step-icon svg{width:25px;height:25px}.library-hero .library-steps li:not(:last-child):after{left:calc(50% + 13px);top:7px}.library-hero .library-hero-visual{width:112%;max-width:none;margin:8px -6% -4px}}
