/*
Theme Name: Amanda's Printables
Author: Amanda's Printables
Description: An article-first printable library with image and on-demand PDF downloads.
Version: 1.1.0
Requires at least: 6.2
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: amandas-printables
*/
:root{
  --ink:#202124;
  --muted:#5f6368;
  --paper:#f1f3f4;
  --white:#fff;
  --line:#e1e5e8;
  --blue:#1a73e8;
  --red:#ea4335;
  --green:#188038;
  --yellow:#fbbc04;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:40px}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:var(--blue);text-underline-offset:4px}
button,input,select{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.wrap{max-width:1180px;margin-left:auto;margin-right:auto;padding-left:32px;padding-right:32px}
.skip{position:absolute;top:-100px;left:12px;z-index:100;background:var(--white);padding:10px}
.skip:focus{top:12px}
.site-header{background:var(--white);border-bottom:1px solid var(--line)}
.site-header::before{content:"";display:block;height:4px;background:linear-gradient(to right,var(--blue) 0 25%,var(--red) 25% 50%,var(--yellow) 50% 75%,#34a853 75% 100%)}
.header-row{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:96px;padding-top:18px;padding-bottom:18px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand-mark{width:29px;height:29px;display:grid;grid-template-columns:repeat(2,1fr);gap:4px;flex-shrink:0;transform:rotate(-3deg)}
.brand-mark span{border-radius:3px;background:var(--blue)}
.brand-mark span:nth-child(2){background:var(--red)}
.brand-mark span:nth-child(3){background:var(--yellow)}
.brand-mark span:nth-child(4){background:#34a853}
.brand-name{font-size:24px;font-weight:650;letter-spacing:-.8px;line-height:1.3;display:block}
.brand small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:24px;font-size:13px}
.nav a{color:var(--muted);text-decoration:none;min-height:36px;display:inline-flex;align-items:center}
.nav a:hover{color:var(--blue);text-decoration:underline}
.library{background:var(--white);margin-top:24px;margin-bottom:24px;padding-top:28px;padding-bottom:28px;min-height:520px;border:1px solid var(--line);border-radius:6px}
.library-intro h1{font-size:32px;line-height:1.22;letter-spacing:-1px;font-weight:650;margin:0 0 9px}
.library-intro p{color:var(--muted);font-size:15px;margin:0 0 22px;max-width:720px}
.search-form{display:flex;gap:9px;max-width:560px;margin:0}
.search-form input[type=search]{width:100%;min-width:0;min-height:44px;border:1px solid #c5cbd0;border-radius:5px;background:var(--white);padding:10px 13px;color:var(--ink)}
.search-form input::placeholder{color:var(--muted)}
.button,button,input[type=submit]{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--blue);border-radius:5px;background:var(--blue);color:var(--white);padding:10px 19px;text-decoration:none;font-weight:600;cursor:pointer}
.button:hover,button:hover,input[type=submit]:hover{background:#155bb5;border-color:#155bb5}
button:disabled{opacity:.6;cursor:wait}
.button.secondary{background:var(--white);color:var(--blue)}
.category-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px;padding-bottom:23px;border-bottom:1px solid var(--line)}
.category-link{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:4px;padding:7px 12px;text-decoration:none;color:var(--muted);font-size:13px;min-height:36px}
.category-link:hover{border-color:var(--blue);color:var(--blue);background:#f4f8ff}
.category-link.is-current{color:var(--white);background:var(--blue);border-color:var(--blue)}
.collection{padding-top:22px}
.collection-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}
.collection-heading h2{font-size:20px;font-weight:650;line-height:1.3;letter-spacing:-.3px;margin:0}
.article-count{font-size:12px;color:var(--muted);white-space:nowrap}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;align-items:stretch}
.card{min-width:0;background:var(--white);border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:5px;overflow:hidden;display:flex;flex-direction:column}
.card:nth-child(4n+2){border-top-color:var(--red)}
.card:nth-child(4n+3){border-top-color:#34a853}
.card:nth-child(4n+4){border-top-color:var(--yellow)}
.card-image{height:242px;padding:18px;display:flex;align-items:center;justify-content:center;background:#f8f9fa;border-bottom:1px solid var(--line);color:var(--muted);text-decoration:none}
.card-image img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 3px #0000000d)}
.preview-placeholder{font-size:15px}
.card-body{padding:18px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.post-category{display:inline-block;font-size:11px;font-weight:600;line-height:1.4;color:#155bb5;background:#e8f0fe;padding:4px 7px;border-radius:3px;margin-bottom:10px}
.category-home-organization{background:#e6f4ea;color:#137333}
.card h3{font-size:21px;line-height:1.3;letter-spacing:-.5px;font-weight:650;margin:0 0 10px}
.card h3 a{color:var(--ink);text-decoration:none}
.card h3 a:hover{color:var(--blue);text-decoration:underline}
.card p{font-size:13px;line-height:1.65;color:var(--muted);margin:0 0 18px}
.text-link{font-size:13px;font-weight:600;text-decoration:none;color:var(--blue)}
.text-link:hover{text-decoration:underline}
.card .text-link{margin-top:auto}
.pagination{margin-top:28px}
.nav-links{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 4px}
.page-numbers{display:inline-block;border:1px solid var(--line);padding:6px 12px;text-decoration:none;border-radius:4px}
.page-numbers.current{background:var(--blue);color:white;border-color:var(--blue)}
.printing-guide{border-top:1px solid var(--line);margin-top:30px;padding-top:18px;font-size:13px;color:var(--muted)}
.printing-guide summary{font-weight:600;color:var(--ink);cursor:pointer;min-height:28px}
.printing-guide[open] summary{color:var(--blue)}
.printing-guide p{max-width:800px;margin:14px 0 0}
.printing-guide strong{color:var(--ink)}
.no-results{background:#f8f9fa;padding:22px;border-left:3px solid var(--yellow);font-size:15px}
.article-wrap{max-width:850px;padding:38px 40px 55px;margin:24px auto;background:var(--white);border:1px solid var(--line);border-radius:6px}
.article-wrap h1{font-size:clamp(32px,4vw,46px);line-height:1.17;letter-spacing:-1.1px;font-weight:650;margin:15px 0 20px}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.article-meta{font-size:12px;color:var(--muted)}
.entry-content{margin-top:28px;color:#30343b}
.entry-content h2{font-size:28px;font-weight:650;line-height:1.3;letter-spacing:-.5px;color:var(--ink);margin-top:36px}
.entry-content h3{font-size:21px;font-weight:650;line-height:1.35;color:var(--ink);margin-top:25px}
.entry-content p{margin-top:0;margin-bottom:19px}
.entry-content li{padding-bottom:6px}
.entry-content img{display:block;max-width:100%;height:auto;margin:auto}
.entry-content figure{margin:25px 0}
.entry-content figcaption{font-size:12px;color:var(--muted);text-align:center;margin-top:11px}
.printable-tools{padding:20px;margin:17px 0 30px;border:1px solid #dce3e9;border-left:4px solid var(--blue);border-radius:5px;background:#f8fafd}
.printable-tools p{font-size:13px;margin:0 0 13px}
.download-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.download-actions button,.download-actions a{font-size:13px;padding:10px 14px;min-height:42px}
.download-actions button:nth-of-type(2){background:var(--green);border-color:var(--green)}
.download-actions button:nth-of-type(2):hover{background:#12672a;border-color:#12672a}
.download-actions select{padding:9px;max-width:100%;border:1px solid #b9c2cc;border-radius:4px;background:var(--white);color:var(--ink);font-size:13px;min-height:42px}
.download-status{display:block;font-size:12px;color:var(--muted);margin-top:10px}
.site-footer{background:var(--white);border-top:1px solid var(--line);padding:25px 0}
.footer-row{display:flex;justify-content:space-between;gap:50px}
.footer-brand{color:var(--ink);font-size:15px;font-weight:650;text-decoration:none}
.site-footer p{font-size:11px;color:var(--muted);max-width:520px;margin:7px 0}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;border:0}
.wp-caption{max-width:100%}
@media(max-width:1000px){
 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .library{margin:20px}
 .article-wrap{margin:20px}
}
@media(max-width:600px){
 .wrap{padding-left:20px;padding-right:20px}
 .header-row{align-items:flex-start;flex-wrap:wrap;gap:9px;min-height:110px;padding-top:16px;padding-bottom:12px}
 .brand-name{font-size:22px}
 .brand small{font-size:11px}
 .brand-mark{width:25px;height:25px}
 .nav{gap:22px;width:100%;padding-left:37px;font-size:12px}
 .nav a{min-height:30px}
 .library{margin:14px 12px;padding:22px 18px;border-radius:5px;min-height:420px}
 .library-intro h1{font-size:28px}
 .library-intro p{font-size:14px}
 .search-form{gap:7px}
 .search-form input[type=search]{font-size:16px;padding-left:10px}
 .search-form button{font-size:13px;padding:10px 13px}
 .category-link{min-height:40px;font-size:12px;padding:7px 10px}
 .cards{grid-template-columns:1fr;gap:20px}
 .card-image{height:220px}
 .card h3{font-size:22px}
 .article-wrap{margin:14px 12px;padding:25px 20px 35px;border-radius:5px}
 .article-wrap h1{font-size:33px}
 .entry-content{font-size:16px}
 .entry-content h2{font-size:25px}
 .entry-content ul,.entry-content ol{padding-left:22px}
 .printable-tools{padding:16px}
 .download-actions{gap:8px}
 .download-actions button,.download-actions a,.download-actions select{font-size:12px}
 .footer-row{display:block}
 .site-footer p{font-size:11px}
}
@media print{
 .site-header,.site-footer,.printable-tools,.skip,.article-wrap>.text-link{display:none}
 body{background:white;color:black}
 .article-wrap{margin:0;padding:0;max-width:100%;border:0}
 .entry-content img{max-height:90vh;object-fit:contain}
}
