@font-face{font-family:Alegreya;src:url('../../assets/fonts/Alegreya-Regular.ttf')}@font-face{font-family:Cinzel;src:url('../../assets/fonts/Cinzel-Bold.ttf');font-weight:700}
*{box-sizing:border-box}body{margin:0;background:#e5f0f3;color:#123d2f;font:1.15rem Alegreya,Georgia,serif}
a{color:#07593e}.printable-toolbar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;max-width:820px;margin:1rem auto;padding:0 1rem}
.printable-toolbar a,.printable-toolbar button{display:inline-flex;align-items:center;min-height:44px;padding:.55rem .85rem;border:1px solid #b38d3b;border-radius:9px;background:#07593e;color:white;text-decoration:none;font:700 1rem Alegreya,serif;cursor:pointer}
.printable-toolbar label{font-weight:700}.printable-toolbar input{min-height:44px;border:1px solid #b38d3b;border-radius:8px;padding:.55rem;font:inherit;max-width:100%}
:focus-visible{outline:3px solid #d9a62f;outline-offset:3px}
.printable-paper{width:min(94vw,816px);min-height:1056px;margin:0 auto 2rem;padding:40px 36px;background:#fffdf7;border:1px solid #d0b67a}
.printable-paper h1{font:700 clamp(1.5rem,4vw,2rem) Cinzel,Georgia,serif;color:#07593e;text-align:center}
.instructions{line-height:1.5;font-size:1.05rem;max-width:700px;margin:0 auto 1.2rem}
.cut-line{border:1px dashed #9b8f76;padding:7px;margin:1rem auto}
.bag-label{position:relative;min-height:370px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:1.3rem;border:4px double #b58b38;background:#fff8e6;text-align:center;color:#073d30}
.bag-label::before,.bag-label::after{content:'✦';position:absolute;font-size:2rem;color:#ad8130;top:1rem}.bag-label::before{left:1rem}.bag-label::after{right:1rem}
.bag-label>img{width:84px;height:90px;object-fit:contain}
.bag-label .label-brand{font:700 .85rem Cinzel,serif;letter-spacing:.08em;margin:.5rem 0}
.bag-label h2{font:700 clamp(2.3rem,6vw,3.7rem) Alegreya,Georgia,serif;color:#7d272b;line-height:1;margin:.35rem 0 1rem}
.bag-label .made-for{font-size:1.3rem;margin:.5rem 0}.label-team{font-style:italic;margin:.5rem 0;color:#07593e}
.gift-tags{display:flex;gap:1rem;margin-top:1rem}.gift-tag{flex:1;display:flex;flex-direction:column;justify-content:center;gap:.4rem;min-height:120px;border:2px solid #b58b38;background:#fff9e7;padding:1rem;text-align:center;font-size:1rem}
.gift-tag strong{color:#7d272b;font-size:1.2rem}
.medallion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}
.medallion-grid .cut-line{width:100%;max-width:305px;margin:.2rem auto;border-radius:50%}
.medallion-grid img{display:block;width:100%;height:auto}
.print-note{font-size:.85rem;text-align:center;color:#6f5b38}
.book-bag-cut{width:min(100%,494px);padding:7px}.book-bag-art{display:block;width:100%;height:auto}.book-gift-tags{max-width:620px;margin:1rem auto}.book-gift-tag{position:relative;flex:1;min-width:0;min-height:112px;margin:0;gap:.3rem;padding:2rem .8rem .8rem;border:2px dashed #d4af5e;border-radius:35px 35px 7px 7px;background:#a51c2a;color:#fff3ce}.book-gift-tag strong{color:#ffda83;font-size:1.15rem;line-height:1.2;overflow-wrap:anywhere}.book-gift-tag>span:last-child{font-size:.95rem}.tag-hole{position:absolute;top:.6rem;left:calc(50% - 5px);width:10px;height:10px;border:1px solid #d4af5e;border-radius:50%;background:#fffdf7}
@media(max-width:600px){.printable-paper{padding:25px 20px;min-height:0}.bag-label{min-height:300px}.gift-tags{gap:.5rem}.gift-tag{padding:.8rem .5rem}.bag-label .made-for{font-size:1.1rem}}
@media print{@page{size:letter portrait;margin:.35in}body{background:white}.printable-toolbar{display:none}.printable-paper{width:7.8in;min-height:0;padding:.12in;border:0;margin:0}.printable-paper h1{font-size:19pt;margin:.05in 0 .12in}.instructions{font-size:11pt;line-height:1.3;margin-bottom:.15in}.bag-label{min-height:0;height:4.1in;padding:.25in}.bag-label>img{width:.75in;height:.8in}.bag-label h2{font-size:37pt}.bag-label .label-brand{font-size:10pt}.bag-label .made-for{font-size:14pt}.gift-tags{gap:.15in}.gift-tag{min-height:0;height:1.25in;font-size:11pt}.cut-line{margin:.1in auto}.medallion-grid{gap:.08in}.medallion-grid .cut-line{width:3.12in;max-width:3.12in}.print-note{font-size:9pt}.instructions,.cut-line,.gift-tags,.medallion-grid{break-inside:avoid}}
@media print{.book-bag-page .printable-paper{padding:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.book-bag-page h1{font-size:18pt}.book-bag-page .instructions{font-size:10pt}.book-bag-cut{width:5.16in;padding:.08in}.book-bag-art{width:5in;height:7in}.book-gift-tags{max-width:6.5in;margin:.1in auto;gap:.2in}.book-gift-tag{height:1.1in;min-height:0;padding:.26in .1in .12in}.book-gift-tag strong{font-size:13pt}.book-gift-tag>span:last-child{font-size:10pt}.tag-hole{top:.08in;width:.1in;height:.1in;left:calc(50% - .05in)}.book-bag-page .print-note{margin:.08in 0 0;font-size:8pt}}
.tag-sheet{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #d0b67a}
.full-gift-tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;max-width:600px;margin:1.5rem auto}
.tag-side-label{text-align:center;font-weight:700;margin:0 0 .5rem}
.large-gift-tag{position:relative;width:100%;aspect-ratio:3/5;background:#ffda83;clip-path:polygon(11% 0,89% 0,100% 9%,100% 100%,0 100%,0 9%)}
.tag-face{position:absolute;inset:2px;background:#a51c2a;color:#ffda83;clip-path:polygon(11% 0,89% 0,100% 9%,100% 100%,0 100%,0 9%)}
.full-tag-hole{position:absolute;top:3%;left:calc(50% - 5px);width:10px;height:10px;border:1px solid #d4af5e;border-radius:50%;background:#fffdf7}
.tag-art{position:absolute;top:11%;left:5%;width:90%;height:auto;display:block}
.tag-name{position:absolute;bottom:4%;left:5%;width:90%;text-align:center;font-size:clamp(.8rem,2.6vw,1.2rem);line-height:1.2;overflow-wrap:anywhere}
.tag-back{display:grid;place-items:center;text-align:center}.tag-message{max-width:90%;font-size:clamp(1rem,4vw,2rem);line-height:1.15}
@media(max-width:450px){.full-gift-tags{grid-template-columns:1fr;max-width:288px}}
@media print{.book-bag-page .printable-sheet{break-inside:avoid;page-break-inside:avoid}.bag-sheet{break-after:page;page-break-after:always}.tag-sheet{margin:0;padding:0;border:0}.full-gift-tags{width:6.333in;max-width:none;grid-template-columns:3in 3in;gap:.333in;margin:.4in auto .25in}.large-gift-tag{width:3in;height:5in}.tag-name{font-size:14pt}.tag-message{font-size:25pt}.picture-load-notice-global{display:none!important}}
