/* The template library extends the public site's document and reading styles. */
.template-intro{padding-block:64px 45px;border-bottom:1px solid var(--line)}
.template-intro h1{font-size:clamp(36px,4vw,54px)}
.template-intro>p{margin-top:18px;font-size:17px;max-width:65ch}
.template-scope{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:24px;font-size:12px;color:var(--muted)}
.template-scope span+span{border-left:1px solid var(--line);padding-left:22px}
.template-library{display:grid;grid-template-columns:218px minmax(0,1fr);gap:46px;padding-block:38px 90px;align-items:start}
.template-sidebar{position:sticky;top:118px}
.template-sidebar h2{font-size:14px;font-weight:700;margin-bottom:15px;letter-spacing:0}
.template-sidebar nav{display:grid;gap:4px}
.template-sidebar nav a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:10px 12px;margin-left:-12px;border-radius:6px;font-size:13px}
.template-sidebar nav a:hover{background:var(--wash)}
.template-sidebar nav a[aria-current]{background:#eaf1ff;color:#184fb9;font-weight:700}
.template-sidebar nav span{font-size:11px;font-variant-numeric:tabular-nums}
.template-sidebar-note{font-size:12px;line-height:1.8;margin-top:35px;padding-top:22px;border-top:1px solid var(--line)}
.template-results{min-width:0}
.template-search label{display:block;font-size:13px;font-weight:650;color:var(--ink);margin-bottom:9px}
.template-search>div{display:flex;align-items:center;gap:12px;border:1px solid #aab8cb;border-radius:7px;padding:0 14px;background:white}
.template-search:focus-within>div{outline:2px solid var(--blue);outline-offset:2px}
.template-search input{min-width:0;width:100%;border:0;outline:none;background:transparent;min-height:52px;font-size:14px;color:var(--ink)}
.template-search input::placeholder{color:var(--muted);opacity:1}
.template-search button{background:transparent;color:var(--blue);font-size:12px;min-height:44px;padding-inline:8px}
.template-search button:disabled{color:var(--muted)}
.template-result-count{font-size:12px;margin-top:14px}
.template-group{margin-top:36px;scroll-margin-top:125px}
.template-group:first-of-type{margin-top:30px}
.template-group-heading{margin-bottom:22px}
.template-group h2{font-size:26px;letter-spacing:-.025em}
.template-group-heading p{font-size:13px;margin-top:8px}
.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.template-card{display:flex;flex-direction:column;min-width:0}
.template-miniature{height:202px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--wash);padding:23px 23px 0;position:relative;transition:border-color .2s}
.template-miniature:before{content:'';position:absolute;inset:13px 12px -1px;background:white;border:1px solid #e0e6ef;border-radius:3px 3px 0 0}
.template-miniature>*{position:relative}
.miniature-heading{font-size:11px;font-weight:700;color:var(--ink);padding-bottom:10px;border-bottom:1px solid var(--line)}
.miniature-section{margin-top:11px}
.miniature-section strong{display:block;font-size:9px;color:var(--ink)}
.miniature-section span{display:block;font-size:8px;color:var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-block:3px}
.miniature-section i{display:block;width:91%;height:2px;background:#e5eaf1;margin-top:5px}
.miniature-section i:last-child{width:65%}
.template-card-description{display:flex;flex-direction:column;flex:1;padding-top:17px}
.template-card h3{font-size:17px;line-height:1.4;letter-spacing:-.02em;font-weight:650;text-wrap:initial}
.template-card p{font-size:12px;line-height:1.8;margin-top:8px;color:var(--body)}
.template-open{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650;color:var(--blue);padding-top:14px;margin-top:auto;min-height:44px}
.template-open svg{width:16px;height:16px;transition:transform .2s}
.template-card:hover .template-miniature{border-color:var(--blue)}
.template-card:hover h3{color:var(--blue)}
.template-card:hover .template-open svg{transform:translateX(4px)}
.template-empty{padding:55px 0 90px}
.template-empty h2{font-size:26px}.template-empty p{margin:15px 0 22px}
.template-detail{padding-block:32px 90px}
.template-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;margin-bottom:36px}
.template-breadcrumb a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.template-detail-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:start}
.template-detail-intro{position:sticky;top:125px}
.template-detail h1{font-size:clamp(34px,3.5vw,46px);line-height:1.18}
.template-detail-intro>p:first-of-type{margin-top:22px;font-size:16px}
.template-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.template-actions .secondary,.template-empty .secondary{border:1px solid #9dacbf;background:white}
.template-copy-status{font-size:12px;min-height:25px;margin-top:12px}
.template-detail-notice{font-size:12px;line-height:1.8;margin-top:18px;border-top:1px solid var(--line);padding-top:22px}
.template-detail-intro>.text-link{font-size:12px;margin-top:18px;white-space:normal}
.template-paper{border:1px solid var(--line);border-radius:7px;box-shadow:0 15px 40px -26px #25354a40;overflow:hidden}
.template-paper>header{display:flex;justify-content:space-between;gap:16px;background:var(--wash);padding:16px 30px;font-size:11px;border-bottom:1px solid var(--line)}
.template-paper-body{padding:32px 36px 40px}
.template-paper h2{font-size:23px;line-height:1.35;letter-spacing:-.025em;text-wrap:initial;padding-bottom:22px;border-bottom:1px solid var(--line)}
.template-paper section{margin-top:26px}
.template-paper h3{font-size:14px;font-weight:750;margin-bottom:10px;letter-spacing:0}
.template-paper p{white-space:pre-line;font-size:12px;line-height:2.15;overflow-wrap:anywhere}
@media(max-width:1050px){.template-library{gap:28px;grid-template-columns:190px minmax(0,1fr)}.template-grid{gap:16px}.template-miniature{padding-inline:21px}.template-detail-layout{gap:35px}.template-paper-body{padding:26px}}
@media(max-width:800px){.template-intro{padding-block:38px 28px}.template-library{grid-template-columns:1fr;gap:28px;padding-top:24px}.template-sidebar{position:static}.template-sidebar nav{display:flex;flex-wrap:wrap;gap:6px}.template-sidebar nav a{margin:0;border:1px solid var(--line);padding:9px 12px;font-size:12px}.template-sidebar-note{display:none}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.template-detail-layout{grid-template-columns:1fr;gap:28px}.template-detail-intro{position:static}.template-detail{padding-top:16px}.template-breadcrumb{margin-bottom:22px}.template-detail-notice{max-width:65ch}.template-miniature{height:190px}}
@media(max-width:480px){.template-intro h1{font-size:36px}.template-intro>p{font-size:15px}.template-grid{grid-template-columns:1fr;gap:28px}.template-card{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px}.template-miniature{height:158px;padding:20px 15px 0}.template-miniature:before{inset:9px 7px -1px}.miniature-heading{font-size:8px}.miniature-section{margin-top:8px}.miniature-section strong{font-size:7px}.miniature-section span{font-size:6px}.template-card-description{padding-top:0}.template-card h3{font-size:16px}.template-card p{font-size:12px}.template-open{padding-top:6px}.template-group h2{font-size:24px}.template-search input{font-size:13px}.template-search>div{padding-inline:10px;gap:7px}.template-paper>header{padding:15px 20px}.template-paper-body{padding:24px 20px}.template-scope{gap:8px 14px}.template-scope span+span{padding-left:14px}}
@media(prefers-reduced-motion:reduce){.template-miniature,.template-open svg{transition:none}}
