@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;700&family=Playfair+Display:wght@400;500;600;700&family=Source+Serif+4:wght@400;500;600&display=swap);:root{--primary:#3d6b3d;--primary-dark:#2a4f2a;--secondary:#c49464;--accent:#8b3a3a;--paper:#faf6ef;--paper-light:#fdfaf5;--paper-dark:#f2ece0;--ink:#2c1810;--ink-light:#6f5e4e;--ink-faded:#a09080;--border:#d4c9b8;--border-light:#e5ddd0;--success:#4a7c3a;--success-bg:#f0f7ee;--warning:#b8860b;--warning-bg:#fef7e8;--error:#8b3a3a;--error-bg:#f9eeee;--shadow-sm:0 1px 3px #2c181014;--shadow-md:0 4px 12px #2c18101a;--shadow-lg:0 8px 24px #2c18101f;--shadow-xl:0 16px 48px #2c181026;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-8:48px;--space-10:64px;--space-12:80px;--space-16:96px;--font-display:"Playfair Display",Georgia,"Times New Roman",serif;--font-body:"Source Serif 4",Georgia,"Palatino Linotype",serif;--font-ui:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;--font-mono:"JetBrains Mono","Fira Code","Courier New",monospace;--bg-primary:var(--paper);--bg-secondary:var(--paper-dark);--text-primary:var(--ink);--text-secondary:var(--ink-light);--border-color:var(--border);--gray-light:var(--border-light);--gray:var(--ink-faded);--card-bg:var(--paper-light);--overlay-bg:#faf6efeb;--light:var(--paper);--dark:var(--ink);--shadow:var(--shadow-md);--font-heading:var(--font-display);--font-mono:var(--font-mono);--font-ui:var(--font-ui)}[data-theme=dark]{--primary:#73a868;--primary-dark:#5a8e50;--secondary:#c49464;--accent:#c96a6a;--paper:#201c17;--paper-light:#28231d;--paper-dark:#1c1915;--ink:#e2d8c8;--ink-light:#bfb09c;--ink-faded:#8a7a68;--border:#3e352b;--border-light:#2d261f;--success:#5a9e4a;--success-bg:#1a2e14;--warning:#d4a030;--warning-bg:#2d2108;--error:#c96a6a;--error-bg:#2e1414;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #00000059;--shadow-lg:0 8px 24px #0006;--shadow-xl:0 16px 48px #00000073;--bg-primary:var(--paper);--bg-secondary:var(--paper-dark);--text-primary:var(--ink);--text-secondary:var(--ink-light);--border-color:var(--border);--gray-light:var(--border-light);--gray:var(--ink-faded);--card-bg:var(--paper-light);--overlay-bg:#1c1915eb;--light:var(--paper);--dark:var(--ink);--shadow:var(--shadow-md)}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#faf6ef;background:var(--paper);background-image:radial-gradient(ellipse at 20% 50%,#c4956a0a 0,#0000 50%),radial-gradient(ellipse at 80% 50%,#3d6b3d08 0,#0000 50%);color:#2c1810;color:var(--ink);font-family:"Source Serif 4",Georgia,Palatino Linotype,serif;font-family:var(--font-body);line-height:1.7;margin:0;transition:background-color .3s ease,color .2s ease}body:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;content:"";height:100%;left:0;mix-blend-mode:multiply;opacity:.012;pointer-events:none;position:fixed;top:0;width:100%;z-index:9999}code{font-family:var(--font-mono)}.container{margin:0 auto;max-width:1200px;padding:0 15px;width:100%}.btn{background:#fdfaf5;background:var(--paper-light);border:1.5px solid #d4c9b8;border:1.5px solid var(--border);border-radius:2px;border-radius:var(--radius-sm);color:#2c1810;color:var(--ink);cursor:pointer;display:inline-block;font-family:var(--font-ui);font-size:.8125rem;font-weight:600;letter-spacing:.06em;line-height:1.5;padding:.55rem 1.25rem;text-align:center;text-decoration:none;text-transform:uppercase;transition:all .2s ease;-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.btn:hover{background:#f2ece0;background:var(--paper-dark);border-color:#a09080;border-color:var(--ink-faded)}.btn-primary{background:#3d6b3d;background:var(--primary);border-color:#2a4f2a;border-color:var(--primary-dark);color:#fdfaf5;color:var(--paper-light)}.btn-primary:hover{filter:brightness(.92)}.btn-secondary{background:#c49464;background:var(--secondary);border-color:#a87d56;color:#fdfaf5;color:var(--paper-light)}.btn-secondary:hover{filter:brightness(.92)}.btn-outline{background:#0000;border:1.5px solid #d4c9b8;border:1.5px solid var(--border);color:#2c1810;color:var(--ink)}.btn-outline:hover{background:#f2ece0;background:var(--paper-dark);border-color:#3d6b3d;border-color:var(--primary);color:#3d6b3d;color:var(--primary)}.btn-lg{font-size:.9rem;padding:.75rem 2rem}.card{background:#fdfaf5;background:var(--card-bg);border:2px solid #d4c9b8;border:2px solid var(--border);border-radius:4px;border-radius:var(--radius-md);box-shadow:0 1px 3px #2c181014;box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding:1.5rem;position:relative;transition:background-color .2s ease,box-shadow .2s ease}.card:before{border:1px solid #d4c9b8;border:1px solid var(--border);content:"";inset:-6px;opacity:.25;pointer-events:none;position:absolute}.form-group{margin-bottom:1rem}.form-group label{color:#6f5e4e;color:var(--ink-light);font-size:.75rem;font-weight:600;letter-spacing:.06em;margin-bottom:.375rem;text-transform:uppercase}.form-control,.form-group label{display:block;font-family:var(--font-ui)}.form-control{background:#faf6ef;background:var(--paper);border:1.5px solid #d4c9b8;border:1.5px solid var(--border);border-radius:2px;border-radius:var(--radius-sm);color:#2c1810;color:var(--ink);font-size:.95rem;line-height:1.5;padding:.5rem .75rem;transition:border-color .15s ease;width:100%}.form-control:focus{border-color:#3d6b3d;border-color:var(--primary);box-shadow:0 0 0 3px #3d6b3d1f;outline:0}[data-theme=dark] .form-control:focus{box-shadow:0 0 0 3px #73a8682e}textarea.form-control{font-family:var(--font-mono);font-size:.85rem;resize:vertical}.alert{border:1.5px solid #0000;border-radius:2px;border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:.85rem;font-weight:600;margin-bottom:1rem;padding:.75rem 1rem}.alert-danger{background:#f9eeee;background:var(--error-bg);border-color:#8b3a3a;border-color:var(--error);color:#8b3a3a;color:var(--error)}.alert-success{background:#f0f7ee;background:var(--success-bg);border-color:#4a7c3a;border-color:var(--success);color:#4a7c3a;color:var(--success)}.newspaper-divider{background:repeating-linear-gradient(90deg,#d4c9b8,#d4c9b8 6px,#0000 0,#0000 10px);background:repeating-linear-gradient(90deg,var(--border) 0,var(--border) 6px,#0000 6px,#0000 10px);border:none;height:3px;margin:2rem 0}:focus-visible{outline:2px solid #3d6b3d;outline:2px solid var(--primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes spinner{to{transform:rotate(1turn)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes strokeAnim{to{stroke-dashoffset:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.reveal{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-scale{opacity:0;transform:scale(.96);transition:opacity .5s ease,transform .5s ease}.reveal-scale.visible{opacity:1;transform:scale(1)}.card-hover{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card-hover:hover{border-color:#3d6b3d;border-color:var(--primary);box-shadow:0 8px 24px #2c18101f;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-hover-lift{transition:transform .15s ease,box-shadow .15s ease}.btn-hover-lift:hover{box-shadow:0 1px 3px #2c181014;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-hover-lift:active{transform:translateY(0)}.cursor-pointer{cursor:pointer}@media (max-width:768px){.container{padding:0 12px}.btn-lg{font-size:.85rem;padding:.6rem 1.5rem}}.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.main-content{animation:pageFadeIn .4s ease;flex:1 1;padding-top:1.5rem}.loading-indicator{align-items:center;display:flex;height:200px;justify-content:center}.spinner{animation:spinner .8s linear infinite;border:3px solid var(--border);border-radius:50%;border-top-color:var(--primary);height:36px;width:36px}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--border-light) 25%,var(--paper-light) 50%,var(--border-light) 75%);background-size:200% 100%}.skeleton-card{margin-bottom:1.5rem;padding:1.5rem}.text-center{text-align:center}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.page-container{margin:0 auto;max-width:1200px;padding:0 15px}.legal-page{background:var(--paper-dark);font-family:var(--font-body)}.legal-content{background:var(--card-bg);border:2px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin:2rem auto;max-width:56rem;padding:2rem;transition:background-color .2s ease}.legal-content .legal-h1{border-bottom:3px double var(--border);color:var(--ink);font-family:var(--font-display);font-size:1.875rem;font-weight:700;margin-bottom:1.5rem;padding-bottom:1rem}.legal-content .legal-h2{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:600;margin-bottom:1rem;margin-top:2rem}.legal-content .legal-h3{font-size:1.25rem}.legal-content .legal-h3,.legal-content .legal-h4{color:var(--ink);font-family:var(--font-display);font-weight:500;margin-bottom:.75rem;margin-top:1.5rem}.legal-content .legal-h4{font-size:1.125rem}.legal-content .legal-p{color:var(--ink-light);line-height:1.625;margin-bottom:1rem}.legal-content .legal-list{color:var(--ink-light);list-style-type:disc;margin-bottom:1.5rem;padding-left:1.5rem}.legal-content .legal-li{line-height:1.625;margin-bottom:.5rem}.legal-content .legal-link{color:var(--primary);-webkit-text-decoration:underline wavy;text-decoration:underline wavy;text-underline-offset:2px}.legal-content .legal-link:hover{color:var(--primary-dark);text-decoration:underline}.legal-content .legal-spacer{height:1rem}.not-found-page{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:2rem;text-align:center}.not-found-box{background:var(--paper);border:2px solid var(--border);max-width:460px;padding:3rem 2.5rem;position:relative;width:100%}.not-found-box:before{border:1px solid var(--border);content:"";inset:-6px;opacity:.2;pointer-events:none;position:absolute}.not-found-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(4,1fr);inset:0;overflow:hidden;padding:1rem;pointer-events:none;position:absolute}.not-found-cell{align-items:center;color:var(--ink);display:flex;font-family:var(--font-mono);font-size:.6rem;justify-content:center;text-transform:uppercase}.not-found-404{color:var(--primary);font-size:5rem;font-weight:800;line-height:1;margin:0}.not-found-404,.not-found-title{font-family:var(--font-display);position:relative;z-index:1}.not-found-title{color:var(--ink);font-size:1.25rem;margin:.75rem 0 .5rem}.not-found-text{color:var(--ink-light);font-family:var(--font-body);font-style:italic;margin:0 0 1.5rem;position:relative;z-index:1}.not-found-actions{display:flex;gap:.75rem;justify-content:center;position:relative;z-index:1}@media (max-width:640px){.not-found-404{font-size:3.5rem}.not-found-box{padding:2rem 1.5rem}}.theme-toggle{align-items:center;background:none;border:1.5px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-faded);cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .15s ease}.theme-toggle:hover{border-color:var(--primary);color:var(--primary)}.sun-moon{height:20px;width:20px}.header{background:var(--card-bg);border-bottom:3px double var(--border);box-shadow:var(--shadow-sm);position:-webkit-sticky;position:sticky;top:0;z-index:1000}.header-content{justify-content:space-between;padding:.6rem 0}.header-content,.logo,.logo-link{align-items:center;display:flex}.logo-link{gap:.75rem;text-decoration:none}.logo-image{background:var(--paper);border:1px solid var(--border);max-height:44px;padding:2px;width:auto}.logo-text{color:var(--ink);font-family:var(--font-display);font-size:1.4rem;font-weight:700;letter-spacing:.03em;line-height:1;margin:0}.logo-text,.tagline{text-transform:uppercase}.tagline{color:var(--ink-light);display:block;font-family:var(--font-ui);font-size:.6rem;letter-spacing:.18em;margin-top:2px}.menu-toggle{align-items:center;background:none;border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;display:none;height:40px;justify-content:center;padding:0;width:40px}.menu-icon{background:var(--ink);display:block;height:2px;position:relative;transition:background .2s ease;width:20px}.menu-icon:after,.menu-icon:before{background:var(--ink);content:"";height:2px;left:0;position:absolute;transition:transform .2s ease;width:100%}.menu-icon:before{top:-6px}.menu-icon:after{top:6px}.menu-icon.open{background:#0000}.menu-icon.open:before{top:0;transform:rotate(45deg)}.menu-icon.open:after{top:0;transform:rotate(-45deg)}.nav{align-items:center}.main-nav-list,.nav{display:flex;gap:.25rem}.main-nav-list{list-style:none;margin:0;padding:0}.nav a{border-radius:var(--radius-sm);color:var(--ink-light);font-family:var(--font-ui);font-size:.8rem;font-weight:600;letter-spacing:.06em;padding:.4rem .75rem;text-decoration:none;text-transform:uppercase;transition:color .15s ease,background .15s ease}.nav a:hover{background:var(--paper-dark);color:var(--primary)}.nav a.active{border-bottom:2px solid var(--primary);color:var(--primary)}@media (max-width:768px){.menu-toggle{display:flex}.nav{background:var(--card-bg);border-bottom:2px solid var(--border);box-shadow:var(--shadow-lg);display:none;flex-direction:column;left:0;padding:1rem;position:absolute;right:0;top:100%}.nav.visible{display:flex;max-height:calc(100vh - 100%);overflow-y:auto}.main-nav-list{flex-direction:column;gap:.25rem;width:100%}.nav a{display:block;padding:.6rem .75rem;width:100%}}.footer{background:var(--card-bg);border-top:3px double var(--border);margin-top:3rem;padding:3rem 0 0;position:relative;z-index:600}.footer-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr 1fr 1fr;padding-bottom:2rem}.footer-brand{display:flex;flex-direction:column;gap:.5rem}.footer-logo{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:.03em}.footer-logo,.footer-tagline{margin:0;text-transform:uppercase}.footer-tagline{color:var(--ink-light);font-family:var(--font-ui);font-size:.65rem;letter-spacing:.18em}.footer-desc{color:var(--ink-light);font-family:var(--font-body);font-size:.85rem;line-height:1.5;margin:0;max-width:220px}.footer-nav{display:flex;flex-direction:column;gap:.5rem}.footer-heading{color:var(--ink);font-family:var(--font-ui);font-size:.7rem;font-weight:600;letter-spacing:.08em;margin:0 0 .25rem;text-transform:uppercase}.footer-link{color:var(--ink-light);font-family:var(--font-ui);font-size:.85rem;text-decoration:none;transition:color .15s ease}.footer-link:hover{color:var(--primary)}.footer-bottom{border-top:1px solid var(--border-light);padding:1.25rem 0;text-align:center}.footer-bottom p{color:var(--ink-faded);font-family:var(--font-ui);font-size:.75rem;margin:0}@media (max-width:768px){.footer-grid{gap:1.5rem;grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (max-width:480px){.footer-grid{gap:1.5rem;grid-template-columns:1fr}}.generation-status-container{bottom:20px;position:fixed;right:20px;z-index:1000}.generation-status{align-items:center;animation:slideIn .3s ease-out;background-color:var(--card-bg);border-radius:8px;box-shadow:var(--shadow);display:flex;max-width:350px;padding:12px 16px}.generation-status.generating{border-left:4px solid var(--primary)}.generation-status.complete{border-left:4px solid var(--success)}.generation-status.error{border-left:4px solid var(--danger)}.status-icon{align-items:center;background-color:#7aa8e01f;border-radius:50%;color:var(--primary);display:flex;height:40px;justify-content:center;margin-right:12px;width:40px}.status-icon.success{background-color:#4caf7d1f;color:var(--success);font-size:1.5rem}.status-icon.err{background-color:#dc35451a;color:var(--danger);font-size:1.2rem}.status-info{flex:1 1}.status-title{color:var(--text-primary);font-size:.95rem;font-weight:700;margin:0 0 4px}.status-subtitle{color:var(--text-secondary);font-size:.78rem;margin:0;opacity:.8}.close-status-btn{background:none;border:none;color:var(--gray);cursor:pointer;font-size:1.2rem;padding:0 0 0 12px}.close-status-btn:hover{color:var(--dark)}.download-again-btn{background:none;border:1px solid var(--primary);border-radius:var(--radius-sm);color:var(--primary);cursor:pointer;flex-shrink:0;font-family:var(--font-ui);font-size:.75rem;font-weight:600;letter-spacing:.06em;margin-left:12px;padding:.3rem .7rem;text-transform:uppercase;transition:all .15s ease;white-space:nowrap}.download-again-btn:hover{background:var(--primary);color:var(--paper-light)}.mini-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(2,14px);grid-template-rows:repeat(2,14px)}.mini-cell{align-items:center;animation:miniPulse 1.5s ease-in-out infinite;background-color:var(--primary);border-radius:2px;color:#fff;display:flex;font-size:.6rem;height:14px;justify-content:center;width:14px}.mini-cell:first-child{animation-delay:0s}.mini-cell:nth-child(2){animation-delay:.2s}.mini-cell:nth-child(3){animation-delay:.3s}.mini-cell:nth-child(4){animation-delay:.1s}@keyframes miniPulse{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.generation-status-container{bottom:10px;left:10px;right:10px}.generation-status{max-width:100%}}
/*# sourceMappingURL=main.0126fcc9.css.map*/