/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-bold:700;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-parchment:#f4e9d3;--color-parchment-dark:#e3cfa0;--color-ink:#3b2a1a;--color-crimson:#8b1e1e;--color-crimson-dark:#6e1616;--color-moss:#3f6b2f;--color-amber:#9a6a00;--font-pixel:"Press Start 2P", ui-monospace, monospace;--shadow-hard:4px 4px 0 var(--color-ink);--shadow-hard-sm:3px 3px 0 var(--color-ink)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{background:var(--color-parchment);color:var(--color-ink);font-family:var(--font-sans);-webkit-text-size-adjust:100%}body{overscroll-behavior-y:none;min-height:100dvh}h1,h2,h3,h4,h5,h6{font-family:var(--font-pixel);line-height:1.5}h1{font-size:1.15rem}h2{font-size:.95rem}h3{font-size:.8rem}h4,h5,h6{font-size:.7rem}@media (width>=768px){h1{font-size:1.5rem}h2{font-size:1.1rem}h3{font-size:.9rem}}a{color:var(--color-crimson);text-underline-offset:2px;text-decoration:underline}:focus-visible{outline:3px solid var(--color-crimson);outline-offset:2px}hr{border:0;border-top:2px solid var(--color-ink);opacity:.35;margin:1.25rem 0}}@layer components{.btn{border:2px solid var(--color-ink);background:var(--color-parchment);min-height:2.75rem;color:var(--color-ink);white-space:nowrap;box-shadow:var(--shadow-hard-sm);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.95rem;font-weight:500;line-height:1.2;transition:transform 60ms,box-shadow 60ms;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--color-crimson);color:var(--color-crimson)}.btn:active:not(:disabled){box-shadow:1px 1px 0 var(--color-ink);transform:translate(2px,2px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-crimson);color:var(--color-parchment)}.btn-primary:hover:not(:disabled){background:var(--color-crimson-dark);color:var(--color-parchment);border-color:var(--color-ink)}.btn-block{width:100%}.btn-sm{min-height:2.25rem;padding:.3rem .6rem;font-size:.85rem}.field{flex-direction:column;gap:.3rem;display:flex}.field>label,.label{font-size:.85rem;font-weight:600}.input{border:2px solid var(--color-ink);width:100%;min-height:2.75rem;color:var(--color-ink);background:#fffaf0;border-radius:0;padding:.5rem .7rem;font-size:1rem}.input:focus{outline:3px solid var(--color-crimson);outline-offset:0}textarea.input{resize:vertical;min-height:4.5rem}.input::placeholder{white-space:nowrap;text-overflow:ellipsis;opacity:.6;overflow:hidden}.composer{padding:.75rem 1rem max(.75rem, env(safe-area-inset-bottom));border-top:3px solid var(--color-ink);background:var(--color-parchment);align-items:flex-end;gap:.5rem;margin:auto -1rem 0;display:flex;position:sticky;bottom:0}.composer textarea.input{flex:1;min-height:2.75rem}.check{align-items:flex-start;gap:.6rem;font-size:.9rem;line-height:1.35;display:flex}.check input{width:1.25rem;height:1.25rem;accent-color:var(--color-crimson);flex-shrink:0;margin-top:.05rem}.hint{opacity:.75;font-size:.8rem}.panel{border:3px solid var(--color-ink);background:var(--color-parchment);box-shadow:var(--shadow-hard);padding:1rem}.message{border:3px solid var(--color-ink);box-shadow:var(--shadow-hard);padding:.75rem .9rem}.message-user{background:var(--color-parchment-dark)}.message-assistant{background:var(--color-parchment)}.caption{opacity:.7;font-size:.85rem}.alert{border:2px solid var(--color-ink);background:#fffaf0;border-left-width:8px;padding:.7rem .9rem;font-size:.95rem}.alert-info{border-left-color:#2f5d8a}.alert-success{border-left-color:var(--color-moss)}.alert-warning{border-left-color:var(--color-amber)}.alert-error{border-left-color:var(--color-crimson)}.expander{border:2px solid var(--color-ink);background:#fffaf0}.expander>summary{cursor:pointer;align-items:center;gap:.5rem;min-height:2.5rem;padding:.55rem .75rem;font-size:.9rem;font-weight:500;list-style:none;display:flex}.expander>summary::-webkit-details-marker{display:none}.expander>summary:before{content:"▸";font-size:.8rem;transition:transform .1s}.expander[open]>summary:before{transform:rotate(90deg)}.expander[open]>summary{border-bottom:2px solid var(--color-ink)}.expander-body{padding:.75rem;font-size:.9rem}.spinner{align-items:center;gap:.6rem;display:inline-flex}.spinner:before{content:"";background:var(--color-crimson);border:2px solid var(--color-ink);flex-shrink:0;width:18px;height:18px;animation:1s steps(4,end) infinite pixel-spin}.spinner>span{font-family:var(--font-pixel);font-size:.65rem;line-height:1.6}.metric-label{font-family:var(--font-pixel);opacity:.8;font-size:.6rem;line-height:1.6}.metric-value{font-family:var(--font-pixel);margin-top:.3rem;font-size:1.1rem}.table-wrap{-webkit-overflow-scrolling:touch;border:2px solid var(--color-ink);overflow-x:auto}.table{border-collapse:collapse;background:#fffaf0;width:100%;font-size:.875rem}.table th{background:var(--color-parchment-dark);text-align:left;white-space:nowrap;font-weight:600}.table th,.table td{border-bottom:1px solid #3b2a1a4d;padding:.45rem .65rem}@supports (color:color-mix(in lab, red, red)){.table th,.table td{border-bottom:1px solid color-mix(in srgb, var(--color-ink) 30%, transparent)}}.table tr:last-child td{border-bottom:0}.tabs{border-bottom:3px solid var(--color-ink);gap:.25rem;display:flex;overflow-x:auto}.tab{white-space:nowrap;cursor:pointer;font-family:var(--font-pixel);color:var(--color-ink);background:0 0;border:2px solid #0000;border-bottom:0;padding:.6rem .8rem;font-size:.6rem}.tab[aria-selected=true]{background:var(--color-crimson);color:var(--color-parchment);border-color:var(--color-ink)}.nav-link{min-height:2.75rem;font-family:var(--font-pixel);color:var(--color-ink);border:2px solid #0000;align-items:center;gap:.6rem;padding:.7rem .75rem;font-size:.65rem;line-height:1.5;text-decoration:none;display:flex}.nav-link:hover{border-color:var(--color-ink)}.nav-link.active{background:var(--color-parchment);border-color:var(--color-ink);box-shadow:var(--shadow-hard-sm)}.chip{border:2px solid var(--color-ink);cursor:pointer;min-height:2.25rem;box-shadow:2px 2px 0 var(--color-ink);background:#fffaf0;justify-content:center;align-items:center;padding:.25rem .5rem;font-size:.85rem;display:inline-flex}.chip:active{box-shadow:1px 1px 0 var(--color-ink);transform:translate(1px,1px)}.prose-gm{overflow-wrap:anywhere;line-height:1.55}.prose-gm>*+*{margin-top:.7rem}.prose-gm h1,.prose-gm h2,.prose-gm h3,.prose-gm h4{margin-top:1.1rem;font-size:.75rem}.prose-gm ul{padding-left:1.3rem;list-style:outside}.prose-gm ol{padding-left:1.4rem;list-style:decimal}.prose-gm li+li{margin-top:.2rem}.prose-gm code{font-family:var(--font-mono);background:#3b2a1a1a;font-size:.85em}@supports (color:color-mix(in lab, red, red)){.prose-gm code{background:color-mix(in srgb, var(--color-ink) 10%, transparent)}}.prose-gm code{padding:.05rem .3rem}.prose-gm pre{border:2px solid var(--color-ink);background:#fffaf0;padding:.6rem;overflow-x:auto}.prose-gm pre code{background:0 0;padding:0}.prose-gm blockquote{border-left:4px solid var(--color-ink);opacity:.85;padding-left:.75rem}.prose-gm table{-webkit-overflow-scrolling:touch;border-collapse:collapse;max-width:100%;font-size:.875rem;display:block;overflow-x:auto}.prose-gm th,.prose-gm td{border:1px solid var(--color-ink);white-space:nowrap;padding:.3rem .5rem}.prose-gm th{background:var(--color-parchment-dark)}.code-block{font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;max-height:24rem;font-size:.78rem;overflow:auto}.dialog-overlay{background:#3b2a1a8c;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.dialog-overlay{background:color-mix(in srgb, var(--color-ink) 55%, transparent)}}.dialog-overlay{z-index:40}.dialog{z-index:50;background:var(--color-parchment);border:3px solid var(--color-ink);width:min(32rem,100vw - 1.5rem);max-height:calc(100dvh - 1.5rem);box-shadow:6px 6px 0 var(--color-ink);padding:1rem;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.dialog-wide{width:min(64rem,100vw - 1rem)}.popover{z-index:50;background:var(--color-parchment);border:3px solid var(--color-ink);width:min(26rem,100vw - 1.5rem);max-height:70dvh;box-shadow:var(--shadow-hard);padding:.9rem;overflow:auto}.progress{border:2px solid var(--color-ink);background:#fffaf0;height:1.1rem}.progress>div{background:var(--color-crimson);height:100%;transition:width .3s steps(8,end)}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.sticky{position:sticky}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.\!bottom-14{bottom:calc(var(--spacing) * 14)!important}.bottom-0{bottom:0}.left-0{left:0}.z-30{z-index:30}.z-50{z-index:50}.order-last{order:9999}.mx-auto{margin-inline:auto}.my-0{margin-block:0}.my-2{margin-block:calc(var(--spacing) * 2)}.my-3{margin-block:calc(var(--spacing) * 3)}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-auto{margin-top:auto}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-dvh{height:100dvh}.h-full{height:100%}.\!min-h-9{min-height:calc(var(--spacing) * 9)!important}.min-h-14{min-height:calc(var(--spacing) * 14)}.min-h-\[calc\(100dvh-5rem\)\]{min-height:calc(100dvh - 5rem)}.min-h-dvh{min-height:100dvh}.\!w-auto{width:auto!important}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[85vw\]{max-width:85vw}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.cursor-pointer{cursor:pointer}.list-disc{list-style-type:disc}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.\!justify-start{justify-content:flex-start!important}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.self-start{align-self:flex-start}.justify-self-start{justify-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-t-3{border-top-style:var(--tw-border-style);border-top-width:3px}.border-r-3{border-right-style:var(--tw-border-style);border-right-width:3px}.border-b-3{border-bottom-style:var(--tw-border-style);border-bottom-width:3px}.border-ink{border-color:var(--color-ink)}.border-ink\/30{border-color:#3b2a1a4d}@supports (color:color-mix(in lab, red, red)){.border-ink\/30{border-color:color-mix(in oklab, var(--color-ink) 30%, transparent)}}.bg-\[\#fffaf0\]{background-color:#fffaf0}.bg-parchment{background-color:var(--color-parchment)}.bg-parchment-dark{background-color:var(--color-parchment-dark)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-1{padding-inline:var(--spacing)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.\!py-1{padding-block:var(--spacing)!important}.py-2{padding-block:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-left{text-align:left}.font-pixel{font-family:var(--font-pixel)}.font-sans{font-family:var(--font-sans)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.5rem\]{font-size:.5rem}.text-\[0\.55rem\]{font-size:.55rem}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.break-words{overflow-wrap:break-word}.text-crimson{color:var(--color-crimson)}.text-ink{color:var(--color-ink)}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-70{opacity:.7}.outline{outline-style:var(--tw-outline-style);outline-width:1px}@media (width>=40rem){.sm\:order-none{order:0}.sm\:ml-auto{margin-left:auto}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}}@media (width>=48rem){.md\:\!bottom-0{bottom:0!important}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:min-h-\[calc\(100dvh-3rem\)\]{min-height:calc(100dvh - 3rem)}.md\:px-8{padding-inline:calc(var(--spacing) * 8)}.md\:py-6{padding-block:calc(var(--spacing) * 6)}.md\:pb-6{padding-bottom:calc(var(--spacing) * 6)}}}@font-face{font-family:"Press Start 2P";src:url(/app/fonts/press-start-2p.ttf)format("truetype");font-display:block}@keyframes pixel-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner:before{animation-duration:4s}.btn,.chip{transition:none}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
