@import"https://fonts.googleapis.com/css2?family=IM+Fell+English:ital@0;1&family=IBM+Plex+Mono:wght@400;500&display=swap";.auth-page[data-astro-cid-sgpqyurt]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:var(--space-lg)}.auth-box[data-astro-cid-sgpqyurt]{background:var(--color-bg);padding:var(--space-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-md);min-width:320px;max-width:400px;width:100%}.auth-title[data-astro-cid-sgpqyurt]{font-family:var(--font-display);font-size:32px;letter-spacing:2px;text-transform:uppercase;font-weight:400}.auth-subtitle[data-astro-cid-sgpqyurt]{font-size:12px;color:var(--color-ink-light);margin-bottom:var(--space-sm)}.auth-form[data-astro-cid-sgpqyurt]{width:100%;display:flex;flex-direction:column;gap:var(--space-md)}.auth-field[data-astro-cid-sgpqyurt]{width:100%;padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:14px;background:var(--color-bg);border:1.5px solid var(--color-ink);color:var(--color-ink);outline:none}.auth-field[data-astro-cid-sgpqyurt]:focus{box-shadow:2px 2px 0 var(--color-ink)}.auth-field[data-astro-cid-sgpqyurt]::placeholder{color:var(--color-ink-faint)}.auth-submit[data-astro-cid-sgpqyurt]{width:100%;margin-top:var(--space-sm)}.auth-footer[data-astro-cid-sgpqyurt]{font-size:12px;color:var(--color-ink-light);margin-top:var(--space-sm)}.auth-link[data-astro-cid-sgpqyurt]{color:var(--color-ink);text-decoration:underline}.auth-link[data-astro-cid-sgpqyurt]:hover{text-decoration:none}.auth-error[data-astro-cid-sgpqyurt]{font-size:12px;color:var(--color-ink);background:var(--color-bg-alt);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-ink-light);width:100%;text-align:center;min-height:0}.auth-error[data-astro-cid-sgpqyurt]:empty{display:none}.auth-divider[data-astro-cid-sgpqyurt]{width:100%;display:flex;align-items:center;gap:var(--space-md);color:var(--color-ink-light);font-size:12px}.auth-divider[data-astro-cid-sgpqyurt]:before,.auth-divider[data-astro-cid-sgpqyurt]:after{content:"";flex:1;height:1px;background:var(--color-ink-light)}.btn-google[data-astro-cid-sgpqyurt]{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:14px;background:var(--color-bg);border:1.5px solid var(--color-ink);color:var(--color-ink);cursor:pointer}.btn-google[data-astro-cid-sgpqyurt]:hover:not(:disabled){box-shadow:2px 2px 0 var(--color-ink)}.btn-google[data-astro-cid-sgpqyurt]:disabled{opacity:.6;cursor:not-allowed}.google-icon[data-astro-cid-sgpqyurt]{flex-shrink:0}:root{--color-bg: #F5F2EB;--color-bg-alt: #EBE7DE;--color-ink: #1A1A1A;--color-ink-light: #5A5A5A;--color-ink-faint: #9A9A9A;--font-display: "IM Fell English", serif;--font-body: "IBM Plex Mono", monospace;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--bottom-bar-height: 100px}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--color-ink);background-color:var(--color-bg)}.sketchy{border:1.5px solid var(--color-ink);box-shadow:1px 1px 0 var(--color-ink),-.5px .5px 0 var(--color-ink),.5px -.5px 0 var(--color-ink)}.sketchy-light{border:1px solid var(--color-ink-light);box-shadow:.5px .5px 0 var(--color-ink-light),-.3px .3px 0 var(--color-ink-light)}.app{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"header header" "browser main" "bottom-left .";height:100vh;gap:0;position:relative}.header{grid-area:header;padding:var(--space-sm) var(--space-lg);border-bottom:1.5px solid var(--color-ink);display:flex;align-items:center;gap:var(--space-md);background:var(--color-bg)}.logo{font-family:var(--font-display);font-size:24px;letter-spacing:2px;text-transform:uppercase;font-weight:400}.tagline{font-size:12px;color:var(--color-ink-light);font-style:italic}.jak-browser{grid-area:browser;border-right:1.5px solid var(--color-ink);display:flex;flex-direction:column;background:var(--color-bg-alt);overflow:hidden}.browser-header{padding:var(--space-md);border-bottom:1px solid var(--color-ink-light);background:var(--color-bg-alt)}.browser-title{font-family:var(--font-display);font-size:14px;text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--space-md)}.browser-controls{display:flex;gap:var(--space-sm);align-items:stretch}.search-container{flex:1}.search-input{width:100%;padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:13px;background:var(--color-bg);border:1.5px solid var(--color-ink);color:var(--color-ink);outline:none}.search-input::placeholder{color:var(--color-ink-faint)}.search-input:focus{box-shadow:2px 2px 0 var(--color-ink)}.recent-btn{padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:11px;text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg);color:var(--color-ink);cursor:pointer;white-space:nowrap;border:1.5px solid var(--color-ink)}.recent-btn.active{background:var(--color-ink);color:var(--color-bg)}.recent-btn:disabled{opacity:.4;cursor:not-allowed}.category-dropdown{position:relative}.category-btn{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:11px;text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg);color:var(--color-ink);cursor:pointer;white-space:nowrap;height:100%;border:1.5px solid var(--color-ink)}.dropdown-arrow{font-size:10px}.category-menu{position:absolute;top:100%;right:0;margin-top:var(--space-xs);background:var(--color-bg);border:1.5px solid var(--color-ink);box-shadow:3px 3px 0 var(--color-ink);min-width:200px;max-height:300px;display:none;flex-direction:column;z-index:100}.category-menu.open{display:flex}.category-menu-header{display:flex;gap:var(--space-sm);padding:var(--space-sm);border-bottom:1px solid var(--color-ink-light)}.category-action{flex:1;padding:var(--space-xs) var(--space-sm);font-family:var(--font-body);font-size:10px;text-transform:uppercase;background:var(--color-bg-alt);border:1px solid var(--color-ink-light);cursor:pointer}.category-action:hover{background:var(--color-ink);color:var(--color-bg)}.category-list{overflow-y:auto;padding:var(--space-sm)}.category-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;font-size:12px;cursor:pointer}.category-item:hover{color:var(--color-ink)}.category-item input[type=checkbox]{accent-color:var(--color-ink)}.jak-grid-container{flex:1;overflow-y:auto;padding:var(--space-md);position:relative;mask-image:linear-gradient(to bottom,transparent 0%,black 3%,black 97%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 3%,black 97%,transparent 100%)}.jak-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--space-sm)}.generations-grid-container{flex:1;overflow-y:auto;padding:var(--space-md);position:relative;mask-image:linear-gradient(to bottom,transparent 0%,black 3%,black 97%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 3%,black 97%,transparent 100%)}.generations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-md)}.generation-card{aspect-ratio:1;cursor:pointer;background:var(--color-bg);border:2px solid var(--color-ink);overflow:hidden;transition:transform .1s ease}.generation-card:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--color-ink),2px 2px 0 var(--color-ink)}.generation-card img{width:100%;height:100%;object-fit:cover}.generations-empty{text-align:center;padding:var(--space-xl);color:var(--color-ink-light)}.generations-empty-hint{font-size:.85em;font-style:italic;margin-top:var(--space-sm)}.empty-state{grid-column:1 / -1;text-align:center;padding:var(--space-xl);color:var(--color-ink-light);font-style:italic}.jak-card{aspect-ratio:1;padding:var(--space-xs);cursor:pointer;transition:transform .1s ease;background:var(--color-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;overflow:hidden}.jak-card:hover{transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--color-ink),1px 1px 0 var(--color-ink)}.jak-card.selected{background:var(--color-ink);color:var(--color-bg)}.jak-card-image{width:100%;height:60px;object-fit:contain}.jak-card.selected .jak-card-image{filter:brightness(1.1)}.jak-card-name{font-size:8px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center}.jak-placeholder{width:50%;aspect-ratio:1;border:1px dashed var(--color-ink-light);display:flex;align-items:center;justify-content:center;font-size:16px}.jak-card.selected .jak-placeholder{border-color:var(--color-bg)}.load-sentinel{height:20px}.loading-indicator{display:flex;justify-content:center;padding:var(--space-md)}.loading-indicator .spinner{width:24px;height:24px}.main{grid-area:main;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl);overflow:hidden}.image-container{max-width:512px;width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-alt)}.image-container.empty{border:2px dashed var(--color-ink-light)}.image-placeholder{text-align:center;color:var(--color-ink-light);padding:var(--space-xl)}.image-placeholder-icon{font-size:48px;margin-bottom:var(--space-md);opacity:.5}.generated-image{max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-in}.fullscreen-overlay{position:fixed;inset:0;background:#000000e6;display:none;align-items:center;justify-content:center;z-index:1000;cursor:zoom-out}.fullscreen-overlay.active{display:flex}.fullscreen-image{max-width:90vw;max-height:90vh;object-fit:contain;cursor:default}.fullscreen-close{position:absolute;top:var(--space-lg);right:var(--space-lg);background:none;border:none;color:var(--color-bg);font-size:32px;cursor:pointer;opacity:.7;transition:opacity .2s}.fullscreen-close:hover{opacity:1}.image-actions{margin-top:var(--space-md);display:flex;gap:var(--space-sm)}.bottom-left{grid-area:bottom-left;display:flex;align-items:center;border-top:1.5px solid var(--color-ink);border-right:1.5px solid var(--color-ink);background:var(--color-bg)}.bottom-right{position:absolute;bottom:0;right:0;width:50%;display:flex;align-items:stretch;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-top:1.5px solid var(--color-ink);background:var(--color-bg)}.right-controls{display:flex;flex-direction:column;gap:var(--space-sm);flex-shrink:0}.selected-jaks{flex:1;display:flex;gap:var(--space-sm);align-items:center;justify-content:center;padding:var(--space-sm) var(--space-md);flex-wrap:nowrap;overflow:hidden}.selected-jak{flex:0 1 64px;min-width:40px;aspect-ratio:1;padding:var(--space-xs);cursor:pointer;background:var(--color-bg);display:flex;align-items:center;justify-content:center}.selected-jak:hover{background:var(--color-ink);color:var(--color-bg)}.selected-jak:hover .selected-jak-image{filter:brightness(1.2)}.selected-jak-image{width:100%;height:100%;object-fit:contain}.selected-jak-placeholder{font-size:14px}.empty-selection{font-size:12px;color:var(--color-ink-faint);font-style:italic}.model-switcher{display:flex;border:1.5px solid var(--color-ink)}.model-btn{flex:1;padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:11px;text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg);color:var(--color-ink);border:none;cursor:pointer;transition:all .1s ease}.model-btn:not(:last-child){border-right:1px solid var(--color-ink-light)}.model-btn.selected{background:var(--color-ink);color:var(--color-bg)}.model-btn:hover:not(.selected){background:var(--color-bg-alt)}.prompt-container{flex:1;display:flex}.prompt-input{flex:1;padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:14px;background:var(--color-bg);border:1.5px solid var(--color-ink);color:var(--color-ink);outline:none;resize:none;min-height:62px;max-height:200px;line-height:1.5;overflow-y:auto}.prompt-input::placeholder{color:var(--color-ink-faint)}.prompt-input:focus{box-shadow:2px 2px 0 var(--color-ink)}.btn{padding:var(--space-sm) var(--space-lg);font-family:var(--font-body);font-size:12px;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:transform .1s ease;border:1.5px solid var(--color-ink)}.btn-primary{background:var(--color-ink);color:var(--color-bg)}.btn-primary:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--color-ink)}.btn-secondary{background:var(--color-bg);color:var(--color-ink)}.btn-secondary:hover:not(:disabled){background:var(--color-ink);color:var(--color-bg)}.btn:disabled{opacity:.4;cursor:not-allowed}.loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);color:var(--color-ink-light)}.spinner{width:32px;height:32px;border:2px solid var(--color-ink-faint);border-top-color:var(--color-ink);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{color:var(--color-ink);background:var(--color-bg-alt);padding:var(--space-md);border:1.5px solid var(--color-ink);margin-top:var(--space-md);font-size:12px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-bg-alt)}::-webkit-scrollbar-thumb{background:var(--color-ink-light);border:1px solid var(--color-bg-alt)}::-webkit-scrollbar-thumb:hover{background:var(--color-ink)}.password-gate{position:fixed;inset:0;background:var(--color-bg);display:flex;align-items:center;justify-content:center;z-index:1000}.password-box{background:var(--color-bg);padding:var(--space-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-md);min-width:300px}.password-title{font-family:var(--font-display);font-size:32px;letter-spacing:2px;text-transform:uppercase}.password-subtitle{font-size:12px;color:var(--color-ink-light)}.password-field{width:100%;padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:14px;background:var(--color-bg);border:1.5px solid var(--color-ink);color:var(--color-ink);outline:none;text-align:center}.password-field:focus{box-shadow:2px 2px 0 var(--color-ink)}.password-error{font-size:12px;color:var(--color-ink);min-height:18px}.sidebar-tabs{display:flex;flex-shrink:0;position:relative;border-right:1.5px solid var(--color-ink);align-self:stretch}.sidebar-tab{flex:1 1 0;min-width:100px;padding:var(--space-md) var(--space-lg);font-family:var(--font-display);font-size:16px;line-height:1.3;text-align:center;cursor:pointer;position:relative;border:none;border-right:1.5px solid var(--color-ink);display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.sidebar-tab:last-child{border-right:none}.sidebar-tab:focus{outline:none}.sidebar-tab:focus-visible{outline:2px solid var(--color-ink);outline-offset:-2px}.sidebar-tab.active{background:var(--color-bg-alt);color:var(--color-ink);z-index:2;margin-top:-1.5px;padding-top:calc(var(--space-md) + 1.5px)}.sidebar-tab:not(.active){background:var(--color-bg);color:var(--color-ink-light);box-shadow:inset 0 2px 4px #0000000f}.sidebar-tab:not(.active):hover{color:var(--color-ink);background:#efece4}.tab-panel{display:none;flex:1;overflow:hidden;flex-direction:column}.tab-panel.active{display:flex}.advanced-content{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md);overflow-y:auto;flex:1;mask-image:linear-gradient(to bottom,transparent 0%,black 3%,black 97%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 3%,black 97%,transparent 100%)}.section-field{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0}.section-label{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-ink);display:flex;flex-direction:column;gap:2px}.section-hint{font-size:11px;color:var(--color-ink-faint);text-transform:none;letter-spacing:0;font-style:italic}.section-input{width:100%;padding:var(--space-sm);font-family:var(--font-body);font-size:11px;line-height:1.4;background:var(--color-bg-alt);border:1px solid var(--color-ink-light);color:var(--color-ink);outline:none;resize:none}.section-input::placeholder{color:var(--color-ink-faint);font-size:10px}.section-input:focus{border-color:var(--color-ink);box-shadow:1px 1px 0 var(--color-ink)}
