*{box-sizing:border-box}*,button{margin:0;padding:0}button{border:none;background:none;font:inherit;cursor:pointer;outline:none;appearance:none}:root{--primary-color:#2563eb;--primary-hover:#1d4ed8;--secondary-color:#10b981;--secondary-hover:#059669;--text-primary:#1f2937;--text-secondary:#6b7280;--bg-primary:#ffffff;--bg-secondary:#f9fafb;--border-color:#e5e7eb;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--radius:10px;--radius-sm:6px;--accent-color:#f59e0b}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;color:var(--text-primary);background:linear-gradient(135deg,#e8eaf6,#e1bee7 25%,#b3e5fc 50%,#c5e1f5);min-height:100vh;padding:2rem 1rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.container{max-width:1200px;margin:0 auto}.skip-to-content{position:absolute;top:-40px;left:0;background:var(--primary-color);color:white;padding:8px 16px;text-decoration:none;z-index:1000;border-radius:0 0 4px 0;font-weight:600}.skip-to-content:focus{top:0}header{text-align:center;margin-bottom:4rem}header .site-title,header h1{font-size:2.75rem;font-weight:700;margin-bottom:.5rem;letter-spacing:-.03em}.site-title-link,header .site-title,header h1{display:inline-flex;align-items:center;justify-content:center;gap:.75rem}.site-title-link{text-decoration:none;color:inherit;transition:opacity .2s ease}.site-title-link:hover{opacity:.8}.site-title-text{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline-block}.site-title-icon{width:80px;height:80px;stroke-width:1.8;color:#6366f1}.subtitle{font-size:.95rem;opacity:.75;font-weight:400;color:rgba(31,41,55,.7);margin-top:.25rem}.breadcrumbs{margin-bottom:2rem;padding:0 1rem;text-align:center}.breadcrumbs-list{justify-content:center;flex-wrap:wrap;list-style:none;margin:0;padding:0}.breadcrumb-item,.breadcrumbs-list{display:flex;align-items:center;gap:.5rem}.breadcrumb-link{display:flex;align-items:center;gap:.375rem;color:var(--text-secondary);text-decoration:none;font-size:.875rem;transition:color .2s ease;padding:.25rem 0}.breadcrumb-link:hover{color:var(--primary-color)}.breadcrumb-icon,.breadcrumb-separator{width:16px;height:16px;stroke-width:2}.breadcrumb-separator{color:var(--text-secondary);opacity:.5}.breadcrumb-current{color:var(--text-primary);font-size:.875rem;font-weight:500}.templates-section-title{display:block;width:100%;max-width:none;font-size:1.75rem;font-weight:700;margin-top:2rem;margin-bottom:1.5rem;color:var(--text-primary);text-align:center;padding:0 1rem;box-sizing:border-box}.templates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.75rem;margin-bottom:2rem}.template-card-wrapper{position:relative}.template-card-badge{position:absolute;top:.75rem;right:.75rem;z-index:2;display:inline-block;padding:.25rem .6rem;font-size:.75rem;font-weight:600;line-height:1.3;color:var(--primary-color);background:var(--bg-primary);border:1px solid rgba(37,99,235,.4);border-radius:9999px;text-decoration:none;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:background .2s,color .2s}.template-card-badge:hover{background:var(--primary-color);color:white;border-color:var(--primary-color)}.category-page-title{margin-bottom:1.5rem}.category-page-description{max-width:800px;margin:0 auto 2rem;padding:0 1rem;font-size:1rem;line-height:1.6;color:var(--text-secondary);text-align:center}.template-card{background:var(--bg-primary);border-radius:var(--radius);box-shadow:0 2px 8px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;position:relative;border:1px solid rgba(229,231,235,.8);min-height:400px}.template-card[data-template]{border-top:3px solid var(--template-color,var(--text-secondary))}.template-card:hover{transform:translateY(-4px);box-shadow:0 16px 24px -5px rgba(0,0,0,.15),0 8px 12px -3px rgba(0,0,0,.1)}.template-card-link{text-decoration:none;color:inherit;display:block}.template-card-link .template-card{cursor:pointer}.template-card:focus-within{outline:2px solid var(--primary-color);outline-offset:2px}.template-preview{padding:1.5rem 1.25rem;background:var(--bg-secondary);display:flex;flex-direction:column;align-items:flex-start;flex:1 1;min-height:0;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.template-icon-wrapper{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;position:relative}.template-card[data-template] .template-icon-wrapper{background:linear-gradient(135deg,color-mix(in srgb,var(--template-color) 35%,transparent),color-mix(in srgb,var(--template-color) 45%,transparent))}.template-icon{width:32px;height:32px;stroke-width:1.5;color:var(--text-primary)}.template-card[data-template] .template-icon{color:var(--template-color,var(--text-primary))}.template-preview h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--text-primary);text-align:center;width:100%;letter-spacing:-.01em}.template-description{font-size:.85rem;color:var(--text-secondary);margin:0 0 1rem;text-align:center;line-height:1.5;min-height:4.5em}.template-preview-image{width:100%;margin:0;padding:0;flex:1 1;min-height:0;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;box-sizing:border-box}.preview-img{width:100%;height:auto;object-fit:cover;object-position:top;border-radius:var(--radius-sm);background:white;border:1px solid var(--border-color);margin:0;padding:0;display:block}.template-page{max-width:900px;background:var(--bg-primary);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:2.5rem;margin:0 auto 2rem}.template-page-header{text-align:center;margin-bottom:2rem}.template-page-header .template-icon-wrapper{margin:0 auto 1.5rem;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(0,0,0,.05),rgba(0,0,0,.1))}.template-page[data-template] .template-page-header .template-icon-wrapper{background:linear-gradient(135deg,color-mix(in srgb,var(--template-color) 35%,transparent),color-mix(in srgb,var(--template-color) 45%,transparent))}.template-page-header .template-icon{width:40px;height:40px}.template-page h1{font-size:2.5rem;margin-bottom:1rem}.template-page h1,.template-page h2{font-weight:700;color:var(--text-primary)}.template-page h2{font-size:1.75rem;margin-top:2.5rem;margin-bottom:1.25rem;text-align:center}.template-page-description{font-size:1.125rem;color:var(--text-secondary);line-height:1.7;margin:0 auto}.template-page-options{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem;padding:1.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-color)}.template-page-options .checkbox-label,.template-page-options .select-label{margin:0}.template-page-preview{margin-bottom:2rem;text-align:center}.template-page-preview .preview-img{max-width:100%;height:auto;border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.budget-preview-wrapper{text-align:left;max-width:600px;margin-left:auto;margin-right:auto}.budget-preview-table-wrap{overflow-x:auto;border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.budget-preview-table{width:100%;border-collapse:collapse;font-size:.9rem}.budget-preview-table td,.budget-preview-table th{padding:.5rem .75rem;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);text-align:left}.budget-preview-table th{font-weight:700;background:var(--bg-secondary)}.budget-preview-table td:last-child,.budget-preview-table th:last-child{border-right:none}.budget-preview-table tr:last-child td{border-bottom:none}.budget-preview-achieved{text-align:center}.budget-preview-checkbox{display:inline-block;width:1.25rem;height:1.25rem;border:2px solid var(--border-color);border-radius:3px;background:transparent;vertical-align:middle}.template-page-actions{text-align:center;padding-top:1.5rem;border-top:1px solid var(--border-color)}.template-page-actions .btn-print{min-width:200px;padding:1rem 2rem;font-size:1.125rem}.template-page .usage-steps{max-width:700px;margin:0 auto 1rem;padding-left:1.5rem;line-height:1.7;color:var(--text-secondary)}.template-page .usage-steps li{margin-bottom:.75rem}.template-page .benefits-list{list-style:none;padding:0;margin:0 auto 1rem;max-width:700px}.template-page .benefits-list li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem;line-height:1.6;color:var(--text-secondary)}.template-page .benefit-icon{flex-shrink:0;color:var(--color-success,#10b981)}.template-page .use-case{margin-bottom:1.5rem}.template-page .use-case h3{font-size:1.2rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.template-page .use-case p{margin:0;line-height:1.7;color:var(--text-secondary)}.template-page .faq-section .faq-item{margin-bottom:1.5rem}.template-page .faq-section .faq-item h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.template-page .faq-section .faq-item p{margin:0;line-height:1.7;color:var(--text-secondary)}.coloring-related-section .related-templates .related-links,.matte-related-section .related-templates .related-links,.sudoku-page .related-templates .related-links,.template-page .related-templates .related-links{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;justify-content:center}.coloring-related-section .related-templates .related-links a,.matte-related-section .related-templates .related-links a,.sudoku-page .related-templates .related-links a,.template-page .related-templates .related-links a{color:var(--link-color,#2563eb);text-decoration:none;font-weight:500}.coloring-related-section .related-templates .related-links a:hover,.matte-related-section .related-templates .related-links a:hover,.sudoku-page .related-templates .related-links a:hover,.template-page .related-templates .related-links a:hover{text-decoration:underline}.coloring-related-section .related-templates .related-links--cards,.matte-related-section .related-templates .related-links--cards,.sudoku-page .related-templates .related-links--cards,.template-page .related-templates .related-links--cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;max-width:720px;margin-left:auto;margin-right:auto}.coloring-related-section .related-templates .related-link-card a,.matte-related-section .related-templates .related-link-card a,.sudoku-page .related-templates .related-link-card a,.template-page .related-templates .related-link-card a{display:flex;flex-direction:column;align-items:stretch;border-radius:var(--radius);overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08);border:1px solid rgba(229,231,235,.8);transition:box-shadow .2s ease,transform .2s ease}.coloring-related-section .related-templates .related-link-card a:hover,.matte-related-section .related-templates .related-link-card a:hover,.sudoku-page .related-templates .related-link-card a:hover,.template-page .related-templates .related-link-card a:hover{box-shadow:0 4px 12px rgba(0,0,0,.12);text-decoration:none}.coloring-related-section .related-templates .related-link-card__image,.matte-related-section .related-templates .related-link-card__image,.sudoku-page .related-templates .related-link-card__image,.template-page .related-templates .related-link-card__image{padding:.5rem .5rem 0;display:block;aspect-ratio:337/177;background-color:var(--bg-primary);overflow:hidden}.coloring-related-section .related-templates .related-link-card__image img,.matte-related-section .related-templates .related-link-card__image img,.sudoku-page .related-templates .related-link-card__image img,.template-page .related-templates .related-link-card__image img{width:100%;height:100%;object-fit:cover;display:block}.coloring-related-section .related-templates .related-link-card__label,.matte-related-section .related-templates .related-link-card__label,.sudoku-page .related-templates .related-link-card__label,.template-page .related-templates .related-link-card__label{display:flex;align-items:center;justify-content:center;padding:.5rem .75rem;font-size:.9rem;font-weight:600;color:var(--text-primary);text-align:center;min-height:65px;border-top:1px solid rgba(229,231,235,.9);background:var(--bg-primary)}.sudoku-page .related-blog-posts,.template-page .related-blog-posts{margin-top:2.5rem;margin-bottom:2rem}.sudoku-page .related-blog-posts h2,.template-page .related-blog-posts h2{font-size:1.75rem;font-weight:700;margin-bottom:1.25rem;color:var(--text-primary)}.sudoku-page .related-blog-posts__list,.template-page .related-blog-posts__list{list-style:none;padding:0;display:flex;flex-direction:column;gap:1rem;max-width:720px;margin:0 auto}.sudoku-page .related-blog-post-tile,.template-page .related-blog-post-tile{margin:0}.sudoku-page .related-blog-post-tile__link,.template-page .related-blog-post-tile__link{display:flex;align-items:stretch;gap:1rem;padding:.75rem;border-radius:var(--radius);background:var(--bg-primary);border:1px solid rgba(229,231,235,.8);box-shadow:0 2px 8px rgba(0,0,0,.08);text-decoration:none;color:inherit;transition:box-shadow .2s ease,border-color .2s ease}.sudoku-page .related-blog-post-tile__link:hover,.template-page .related-blog-post-tile__link:hover{box-shadow:0 4px 12px rgba(0,0,0,.12);border-color:rgba(37,99,235,.3)}.sudoku-page .related-blog-post-tile__image,.template-page .related-blog-post-tile__image{flex-shrink:0;width:120px;height:80px;border-radius:calc(var(--radius) - 2px);overflow:hidden;background:var(--bg-secondary,#f3f4f6)}.sudoku-page .related-blog-post-tile__image img,.template-page .related-blog-post-tile__image img{width:100%;height:100%;object-fit:cover;display:block}.sudoku-page .related-blog-post-tile__body,.template-page .related-blog-post-tile__body{flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.35rem;text-align:left}.sudoku-page .related-blog-post-tile__title,.template-page .related-blog-post-tile__title{font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sudoku-page .related-blog-post-tile__ingress,.template-page .related-blog-post-tile__ingress{font-size:.875rem;line-height:1.45;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sudoku-page .related-blog-post-tile__cta,.template-page .related-blog-post-tile__cta{font-size:.875rem;font-weight:600;color:var(--link-color,#2563eb);margin-top:.25rem}.sudoku-page .related-blog-post-tile__link:hover .related-blog-post-tile__cta,.template-page .related-blog-post-tile__link:hover .related-blog-post-tile__cta{text-decoration:underline}.coloring-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:800px;margin-left:auto;margin-right:auto}@media (max-width:900px){.coloring-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.coloring-grid{grid-template-columns:1fr}}.coloring-card-link{text-decoration:none;color:inherit;display:block}.coloring-card{background:var(--bg-primary);border-radius:var(--radius);box-shadow:0 2px 8px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;border:1px solid rgba(229,231,235,.8);max-width:none;min-height:0;position:relative;border-top:4px solid var(--card-accent,transparent)}.coloring-card-badge{position:absolute;top:.6rem;right:.6rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--card-accent,rgba(17,24,39,.92));color:white;font-weight:800;line-height:1;font-size:1rem;padding:.45rem .55rem;min-height:2rem;min-width:2rem;box-shadow:0 6px 16px rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.35);pointer-events:none}.coloring-card-link:hover .coloring-card{transform:translateY(-4px);box-shadow:0 16px 24px -5px rgba(0,0,0,.15),0 8px 12px -3px rgba(0,0,0,.1)}.coloring-card-link:focus-within .coloring-card{outline:2px solid var(--primary-color);outline-offset:2px}.coloring-card-image{width:100%;padding:0;flex:0 0 auto;display:flex;align-items:flex-start;justify-content:center;overflow:hidden}.coloring-card-img{width:100%;max-width:250px;height:auto;object-fit:cover;object-position:top;border-radius:0;background:white;margin:0;padding:0;display:block}.coloring-card-title{font-size:1rem;font-weight:600;margin:0;padding:.65rem .75rem;color:var(--text-primary);text-align:center;width:100%;letter-spacing:-.01em;border-top:1px solid var(--border-color)}.pakkeliste-card-link{text-decoration:none;color:inherit;display:block}.pakkeliste-card{background:var(--bg-primary);border-radius:var(--radius);box-shadow:0 2px 8px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;border:1px solid rgba(229,231,235,.8)}.pakkeliste-card-link:hover .pakkeliste-card{transform:translateY(-4px);box-shadow:0 16px 24px -5px rgba(0,0,0,.15),0 8px 12px -3px rgba(0,0,0,.1)}.pakkeliste-card-link:focus-within .pakkeliste-card{outline:2px solid var(--primary-color);outline-offset:2px}.pakkeliste-card-image{width:100%;aspect-ratio:16/9;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--bg-secondary)}.pakkeliste-card-img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:0;background:white;margin:0;padding:0;display:block}.pakkeliste-card-title{font-size:1.25rem;font-weight:600;margin:0;padding:.75rem 1.25rem .25rem;color:var(--text-primary);text-align:center;width:100%;letter-spacing:-.01em;border-top:1px solid var(--border-color)}.pakkeliste-card-description{font-size:.9rem;line-height:1.45;color:var(--text-secondary);margin:0;padding:0 1.25rem 1rem;text-align:center}.matte-trinn-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.matte-trinn-card-link{text-decoration:none;color:inherit;display:block}.matte-trinn-card{background:var(--bg-primary);border-radius:var(--radius);box-shadow:0 2px 8px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05);border:1px solid rgba(229,231,235,.8);transition:all .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:2rem 1.25rem;min-height:280px;box-sizing:border-box}.matte-trinn-card-link:hover .matte-trinn-card{transform:translateY(-4px);box-shadow:0 16px 24px -5px rgba(0,0,0,.15),0 8px 12px -3px rgba(0,0,0,.1)}.matte-trinn-card:focus-within{outline:2px solid var(--primary-color);outline-offset:2px}.matte-trinn-card-icon{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);margin-bottom:1rem;border:1px solid rgba(229,231,235,.9)}.matte-trinn-card-icon-img{width:48px;height:48px;object-fit:contain;display:block}.matte-trinn-card-title{font-size:1.35rem;font-weight:700;margin:0 0 .75rem;color:var(--text-primary);text-align:center}.matte-trinn-card-description{margin:0;color:var(--text-secondary);font-size:.95rem;line-height:1.6;text-align:center}.checkbox-label{display:flex;align-items:center;gap:0;font-size:.95rem;color:var(--text-primary);cursor:pointer;padding:.75rem;border-radius:var(--radius-sm);transition:background-color .2s ease}.checkbox-label:hover{background-color:rgba(0,0,0,.02)}.checkbox-label:focus-within{outline:2px solid var(--primary-color);outline-offset:2px;border-radius:var(--radius-sm);background-color:rgba(37,99,235,.05)}.checkbox-label label{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:.75rem;width:100%;margin:0;padding:0}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-color);flex-shrink:0;margin:0;padding:0;display:block;align-self:center}.select-label{display:flex;align-items:center;gap:.75rem;font-size:.95rem;color:var(--text-primary)}.select-label label{font-weight:500;white-space:nowrap;min-width:fit-content}.template-page-options select,.year-select{flex:1 1;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);font-size:.95rem;font-family:inherit;background:white;color:var(--text-primary);cursor:pointer;min-width:150px;transition:all .2s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;padding:.625rem 2.5rem .625rem .875rem}.template-page-options select:hover,.year-select:hover{border-color:#9ca3af;background-color:#f9fafb}.template-page-options select:focus,.year-select:focus{outline:2px solid var(--primary-color);outline-offset:2px;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(37,99,235,.1);background-color:white}.btn{width:100%;padding:12px 24px;font-size:.9rem;font-weight:500;border:none!important;border-radius:8px;cursor:pointer;transition:all .2s ease;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden;box-sizing:border-box;outline:none;appearance:none;box-shadow:none;text-decoration:none;margin:0;flex-shrink:0}.btn:focus{outline:2px solid var(--primary-color);outline-offset:2px;box-shadow:none}.btn:focus:not(:focus-visible){outline:none}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .5s,height .5s}.btn:active:before{width:300px;height:300px}.btn:active{transform:translateY(0);border:none!important;box-shadow:none}.btn-primary,.btn-print{background:var(--primary-color);color:white;border:none!important}.btn-primary:hover,.btn-print:hover{background:#1e40af;transform:translateY(-2px);box-shadow:0 4px 12px rgba(37,99,235,.35);border:none!important}.btn-secondary{background:#4b5563;color:white;border:none!important}.btn-secondary:hover{background:#374151;transform:translateY(-2px);box-shadow:0 4px 12px rgba(55,65,81,.35);border:none!important}.btn-icon{width:16px;height:16px;stroke-width:2.5;flex-shrink:0;color:inherit;vertical-align:middle;display:inline-block;margin:0;padding:0}#print-container{position:absolute;left:-9999px;visibility:hidden;width:210mm;background:white}#print-container[data-landscape]{width:297mm}@media print{body{background:white;padding:0}.container{max-width:100%}.btn,.template-card:not(.print-active),footer,header,main .breadcrumbs,main .card-section.faq-section,main .category-page-description,main .sudoku-generator .sudoku-generator-actions,main .sudoku-generator .sudoku-generator-board,main .templates-section-title{display:none!important}.template-card.print-active{box-shadow:none;border:none;page-break-after:always}html:not(.print-page) .print-template{padding:2rem}html:not(.print-page) .print-template h2{font-size:2rem;margin-bottom:1.5rem;text-align:center}}.footer{margin-top:4rem;padding:2rem 1rem;background:rgba(0,0,0,.05);text-align:center;width:100%}.footer-content{max-width:800px;margin:0 auto}.footer-block{margin-bottom:2rem;text-align:left}.footer-block:last-of-type{margin-bottom:1.5rem}.footer h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.footer p{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin-bottom:1rem}.footer-content h2{font-size:1.5rem;margin-bottom:1rem;color:#2d2d2d}.footer-content p{margin-bottom:1rem;line-height:1.6}.footer-content a{color:var(--primary-color);text-decoration:underline;font-weight:500}.footer-content a:hover{color:var(--primary-hover)}.footer-content strong{font-weight:600;color:#8b7fc8}.footer-copy{margin-top:1.5rem;padding-top:1rem;font-size:.9rem;font-weight:500}main h2{font-size:1.75rem;font-weight:700;color:var(--text-primary);line-height:1.3;margin:3rem auto 1.25rem}main h2,main>p{text-align:center;max-width:800px;padding:0 1rem}main>p{margin:0 auto 1.5rem;font-size:1rem;line-height:1.7;color:var(--text-secondary)}main>p strong{font-weight:600;color:var(--text-primary)}.card-section{max-width:800px;margin:3rem auto 2rem;padding:2rem 1.5rem;background:rgba(255,255,255,.9);border:1px solid #e5e7eb;border-radius:var(--radius);box-shadow:0 2px 8px rgba(0,0,0,.05)}.faq-section{margin-bottom:0}.template-tips-section p{font-size:.95rem;line-height:1.7;color:var(--text-secondary);margin:0}.template-tips-section p+p{margin-top:.85rem}.template-tips-section p strong{font-weight:600;color:var(--text-primary)}.faq-section h2{font-size:1.75rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-primary);text-align:center}.faq-item{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.faq-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.faq-section h3{font-size:1.1rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary);line-height:1.4}.faq-section p{font-size:.95rem;line-height:1.7;color:var(--text-secondary);margin-bottom:0}.faq-section p strong{font-weight:600;color:var(--text-primary)}.privacy-section{text-align:center}.privacy-section h2{font-size:1.75rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary)}.privacy-section p{font-size:1rem;color:var(--text-secondary);line-height:1.7;margin-bottom:1rem;max-width:700px;margin-left:auto;margin-right:auto}.privacy-section p:last-child{margin-bottom:0}.privacy-section a{color:var(--primary-color);text-decoration:underline;font-weight:500;transition:color .2s ease}.privacy-section a:hover{color:var(--primary-hover)}.info-page section{margin-bottom:1.5rem}.info-page section h2{font-size:1.15rem;font-weight:600;margin-bottom:.5rem}.info-page section h3{font-size:1rem;font-weight:600;margin:1.25rem 0 .35rem}.info-page section p{font-size:1rem;color:var(--text-secondary);line-height:1.7;margin:0}.info-page section p+p{margin-top:1rem}.info-page section p a{color:var(--primary-color);text-decoration:underline}.info-page section p a:hover{color:var(--primary-hover)}.info-page section ul{margin:1rem 0 0;padding-left:1.5rem}.info-page section ul li{margin-bottom:.5rem;line-height:1.6;color:var(--text-secondary)}.info-page .template-page-header{text-align:center}.personvern-page-updated{font-size:.9rem;color:var(--text-secondary);margin-top:2rem;margin-bottom:1rem}.personvern-page-back,.template-page-back{margin:2rem 0 0}.personvern-page-back a,.template-page-back a{color:var(--primary-color);text-decoration:underline;font-weight:500}.personvern-page-back a:hover,.template-page-back a:hover{color:var(--primary-hover)}.contact-form{width:100%;margin-top:1rem}.contact-form-group{margin-bottom:1.25rem}.contact-form-group label{display:block;font-size:.95rem;font-weight:500;color:var(--text-primary);margin-bottom:.35rem}.contact-form input,.contact-form textarea{width:100%;padding:.625rem .875rem;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);font-size:.95rem;font-family:inherit;background:white;color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.contact-form input:hover,.contact-form textarea:hover{border-color:#9ca3af}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(37,99,235,.1)}.contact-form input:disabled,.contact-form textarea:disabled{opacity:.7;cursor:not-allowed}.contact-form textarea{resize:vertical;min-height:120px}.contact-form-turnstile{margin:.5rem 0;min-height:1px;display:flex;justify-content:center}.contact-form .btn-primary{margin-top:.5rem}.contact-form-message{font-size:.95rem;margin-bottom:1rem;padding:.75rem;border-radius:var(--radius-sm)}.contact-form-message--success{color:#166534;background:#dcfce7}.contact-form-message--error{color:#991b1b;background:#fee2e2}.other-templates-section{text-align:center}.other-templates-section h2{font-size:1.75rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary)}.other-templates-section p{font-size:1rem;color:var(--text-secondary);line-height:1.7;margin-bottom:0}.other-templates-section a{color:var(--primary-color);text-decoration:underline;font-weight:500;transition:color .2s ease}.other-templates-section a:hover{color:var(--primary-hover)}.sudoku-generator{margin:2rem 0;display:flex;flex-direction:column;align-items:center}.sudoku-generator-board{display:inline-block;margin-bottom:1.5rem}.sudoku-generator-actions{display:flex;flex-direction:row;flex-wrap:nowrap;gap:.75rem;align-items:center;justify-content:center}.sudoku-generator-actions .btn{display:inline-flex;align-items:center;gap:.5rem}@media (max-width:768px){.sudoku-generator-actions{flex-direction:column;flex-wrap:wrap;width:100%}.sudoku-generator-actions .btn{width:100%}}.sudoku-board-table{border-collapse:collapse;border:2px solid #111;background:var(--bg-primary);font-size:clamp(14px,2.5vw,22px);font-weight:600;color:var(--text-primary);table-layout:fixed}.sudoku-board--9x9 .sudoku-board-table{width:min(360px,85vw);height:min(360px,85vw)}.sudoku-board--4x4 .sudoku-board-table{width:min(200px,60vw);height:min(200px,60vw)}.sudoku-cell{border:1px solid #ccc;padding:0;text-align:center;vertical-align:middle}.sudoku-cell--box-right{border-right:2px solid #111}.sudoku-cell--box-bottom{border-bottom:2px solid #111}.sudoku-board--9x9 .sudoku-cell{width:11.11%;height:11.11%}.sudoku-board--4x4 .sudoku-cell{width:25%;height:25%}.sudoku-cell-inner{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:1.8em}.sudoku-board--9x9 .sudoku-cell-inner{min-height:2em}.sudoku-license-notice{font-size:.9rem;color:var(--text-secondary);margin:0;text-align:center}.sudoku-license-notice a{color:var(--primary-color);text-decoration:underline;font-weight:500}.sudoku-license-notice a:hover{color:var(--primary-hover)}.print-only{display:none}@media print{.no-print{display:none!important}.print-only{display:block!important}html.sudoku-page body *{visibility:hidden}html.sudoku-page .sudoku-print-area,html.sudoku-page .sudoku-print-area *{visibility:visible}html.sudoku-page .sudoku-print-area{position:absolute;left:0;top:2.5rem;width:100%;padding:0;page-break-inside:avoid}@page{size:A4;margin:0}html.sudoku-page,html.sudoku-page body{height:297mm!important;max-height:297mm!important;overflow:hidden!important;margin:0!important;padding:0!important}html.sudoku-page .sudoku-print-area .sudoku-cell{border:1px solid #ccc!important}html.sudoku-page .sudoku-print-area .sudoku-cell--box-right{border-right:2px solid #111!important}html.sudoku-page .sudoku-print-area .sudoku-cell--box-bottom{border-bottom:2px solid #111!important}html.sudoku-page .sudoku-print-area .sudoku-board-table{margin:0 auto;border:2px solid #111!important}}@media (max-width:768px){header{margin-bottom:3rem}header .site-title,header h1{font-size:2.25rem}.subtitle{font-size:.9rem}.templates-grid{grid-template-columns:1fr;gap:1.5rem;display:flex;flex-direction:column}.template-card{width:100%;min-height:550px}.template-preview{padding:1.25rem 1rem}.btn{width:100%;min-width:100%;max-width:100%;padding:12px 24px}.template-page{padding:1.5rem;margin:1rem}.template-page h1{font-size:1.75rem;line-height:1.3;word-wrap:break-word}.template-page h2{font-size:1.5rem;margin-top:2rem;margin-bottom:1rem}.template-page-description{font-size:1rem}.template-page-options{padding:1rem;gap:1rem}.template-page-header .template-icon-wrapper{width:64px;height:64px}.template-page-header .template-icon{width:32px;height:32px}.template-page-preview{margin-bottom:1.5rem}.template-page-preview .preview-img{width:100%;max-width:100%}.template-page-actions{padding-top:1rem}.template-page-actions .btn-print{width:100%;min-width:auto;padding:.875rem 1.5rem;font-size:1rem}}@media (max-width:480px){body{padding:1.5rem .75rem}header{margin-bottom:2.5rem}header .site-title,header h1{font-size:2rem}.subtitle{font-size:.85rem}.template-preview{padding:1rem .75rem}.template-card{min-height:500px}.template-preview h3{font-size:1.15rem}.template-icon-wrapper{width:48px;height:48px;margin-bottom:.75rem}.template-icon{width:24px;height:24px}.template-description{font-size:.8rem}.checkbox-label{font-size:.9rem;padding:.4rem}.checkbox-label input[type=checkbox]{width:18px;height:18px}.select-label{font-size:.9rem;flex-direction:column;align-items:flex-start;gap:.5rem}.select-label label{width:100%}.template-page-options select,.year-select{width:100%;min-width:auto;font-size:.9rem;padding:.5rem 2.25rem .5rem .75rem}.btn{font-size:.85rem;padding:12px 20px;border-radius:8px}.btn-icon{width:16px;height:16px}}