:root{--paper: #faf9f5;--paper-sunk: #f3f1ea;--paper-raised: #fff;--ink: #1a1a1a;--ink-muted: #4b4943;--ink-subtle: #868078;--rule: #e7e3da;--rule-strong: #d6d1c4;--rust: #9c4e33;--rust-bright: #b86040;--rust-soft: #f5ece8;--font-serif: "Newsreader", Charter, Georgia, Cambria, serif;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px}body{font-family:var(--font-serif);font-weight:400;line-height:1.55;background:var(--paper);color:var(--ink);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1.25rem}h1,h2,h3{font-family:var(--font-serif);font-weight:600;line-height:1.2;letter-spacing:-.01em}p{color:var(--ink-muted)}main.hero{text-align:center;max-width:640px}main.hero .eyebrow{font-family:var(--font-sans);font-size:.75rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-subtle);margin-bottom:1.25rem}main.hero h1{font-size:clamp(2.5rem,6vw,4rem);margin-bottom:1rem;color:var(--ink)}main.hero h1 em{color:var(--rust);font-style:italic}main.hero p{font-size:clamp(1.0625rem,1.8vw,1.25rem);line-height:1.5}main.hero .fields{margin-top:2.25rem;display:flex;flex-direction:column;gap:1.25rem;text-align:left}main.hero .field label{display:block;font-family:var(--font-sans);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);margin-bottom:.5rem}main.hero .field .value{font-family:var(--font-mono);font-size:.8125rem;word-break:break-all;background:var(--paper-sunk);border:1px solid var(--rule);border-radius:3px;padding:.625rem .75rem;color:var(--ink);line-height:1.5}.actions{margin-top:2rem;display:flex;gap:.75rem;justify-content:center}button{font-family:var(--font-sans);font-size:.9375rem;font-weight:500;letter-spacing:.01em;padding:.6875rem 1.25rem;border:1px solid var(--rust);background:var(--rust);color:var(--paper);border-radius:3px;cursor:pointer;transition:background .12s ease,border-color .12s ease}button:hover{background:var(--rust-bright);border-color:var(--rust-bright)}button:disabled{opacity:.55;cursor:not-allowed}button.secondary{background:transparent;color:var(--ink-muted);border-color:var(--rule-strong)}button.secondary:hover{background:var(--paper-sunk);color:var(--ink);border-color:var(--rule-strong)}.muted-error{margin-top:1rem;font-family:var(--font-sans);font-size:.8125rem;color:#a8482b}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body.shell-mode #root{align-items:stretch;justify-content:stretch;padding:0}.shell{display:flex;width:100%;min-height:100vh}.sidebar{width:220px;flex-shrink:0;background:var(--paper-sunk);border-right:1px solid var(--rule);padding:1.5rem .875rem;display:flex;flex-direction:column;gap:1.5rem}.sidebar .brand{padding:0 .5rem}.sidebar nav ul{list-style:none;display:flex;flex-direction:column;gap:.25rem}.nav-item{display:block;width:100%;padding:.5rem .625rem;border:none;border-radius:3px;background:transparent;font-family:var(--font-sans);font-size:.875rem;font-weight:400;letter-spacing:0;text-align:left;color:var(--ink-muted);cursor:pointer;transition:background .12s ease,color .12s ease}.nav-item:hover{background:var(--paper-raised);color:var(--ink);border-color:transparent}.nav-item.active,.nav-item.active:hover{background:var(--rust-soft);color:var(--rust)}.shell-main{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{display:flex;align-items:center;gap:1.5rem;padding:.875rem 1.75rem;border-bottom:1px solid var(--rule);background:var(--paper)}.topbar-spacer{flex:1}.topbar-stat{display:flex;flex-direction:column;align-items:flex-end;gap:.1875rem}.topbar-label{font-family:var(--font-sans);font-size:.625rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle)}.topbar-value{font-family:var(--font-mono);font-size:.8125rem;color:var(--ink)}.topbar-value.clickable{cursor:pointer}.topbar-value.dim{color:var(--ink-subtle)}button.small{padding:.5rem .875rem;font-size:.8125rem}.page-wrap{padding:2rem 1.75rem;flex:1;min-width:0;display:flex;flex-direction:column}.page{max-width:960px;display:flex;flex-direction:column;gap:1.5rem}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.page-header h2{font-family:var(--font-serif);font-weight:600;font-size:1.625rem;color:var(--ink)}.page-header .subtitle{font-family:var(--font-sans);font-size:.875rem;color:var(--ink-subtle);margin-top:.25rem}.create-form{background:var(--paper-raised);border:1px solid var(--rule);border-radius:4px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.create-form label{display:flex;flex-direction:column;gap:.375rem}.create-form label>span{font-family:var(--font-sans);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle)}.create-form input,.create-form select{font-family:var(--font-mono);font-size:.8125rem;padding:.5rem .625rem;background:var(--paper-sunk);border:1px solid var(--rule);border-radius:3px;color:var(--ink);width:100%}.create-form input:focus,.create-form select:focus{outline:none;border-color:var(--rust)}.create-form .expires-controls{display:flex;gap:.5rem}.create-form .expires-controls input{flex:2;min-width:0}.create-form .expires-controls select{flex:1;min-width:0;font-family:var(--font-sans)}.create-form .form-row{display:flex;gap:1rem}.create-form .form-row label{flex:1;min-width:0}.create-form .form-actions{display:flex;gap:.625rem}.revealed{background:var(--rust-soft);border:1px solid var(--rust);border-radius:4px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.revealed-header{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.revealed-header strong{font-family:var(--font-sans);font-size:.875rem;color:var(--rust)}.revealed-warn{font-family:var(--font-sans);font-size:.8125rem;color:var(--ink-muted)}.revealed-row{display:flex;align-items:center;gap:.625rem}.revealed .key{flex:1;font-family:var(--font-mono);font-size:.8125rem;background:var(--paper-raised);border:1px solid var(--rule);border-radius:3px;padding:.5rem .625rem;word-break:break-all}.revealed .dismiss{align-self:flex-end}.keys-table{width:100%;border-collapse:collapse;font-family:var(--font-sans);font-size:.8125rem;background:var(--paper-raised);border:1px solid var(--rule);border-radius:4px;overflow:hidden}.keys-table th,.keys-table td{text-align:left;padding:.625rem .875rem;border-bottom:1px solid var(--rule);vertical-align:middle}.keys-table tbody tr:last-child td{border-bottom:none}.keys-table th{font-weight:500;font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-subtle);background:var(--paper-sunk)}.keys-table td{color:var(--ink)}.keys-table .id{font-family:var(--font-mono);font-size:.75rem;color:var(--ink-muted)}.keys-table .dim{color:var(--ink-subtle)}.keys-table .actions-cell{text-align:right}button.danger{color:var(--rust);border-color:var(--rust)}button.danger:hover{background:var(--rust-soft);color:var(--rust);border-color:var(--rust)}.empty{font-family:var(--font-sans);font-size:.875rem;color:var(--ink-subtle);padding:1.5rem;text-align:center;background:var(--paper-sunk);border:1px dashed var(--rule);border-radius:4px}.playground{max-width:none;flex:1;min-height:0;width:100%}.playground-body{flex:1;min-height:0;display:flex;gap:1.5rem;align-items:stretch}.chat-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1rem}.chat-main .chat-messages{flex:1;min-height:120px;max-height:none}.chat-config{flex-shrink:0;width:340px;align-self:flex-start;display:flex;flex-direction:column;gap:1rem;background:var(--paper-raised);border:1px solid var(--rule);border-radius:4px;padding:1rem 1.125rem}.chat-config-label{font-family:var(--font-sans);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);margin:0}@media(max-width:800px){.playground-body{flex-direction:column}.chat-config{width:auto;order:-1}}.chat-model{display:flex;flex-direction:column;gap:.375rem}.chat-model>span{font-family:var(--font-sans);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle)}.chat-model select{font-family:var(--font-sans);font-size:.875rem;padding:.5rem .625rem;background:var(--paper-sunk);border:1px solid var(--rule);border-radius:3px;color:var(--ink)}.chat-model select:focus{outline:none;border-color:var(--rust)}.chat-paid-note{font-family:var(--font-sans);font-size:.8125rem;color:var(--ink-muted);margin:0}.auth-toggle{display:inline-flex;border:1px solid var(--rule-strong);border-radius:3px;overflow:hidden;align-self:flex-start}.auth-option{font-family:var(--font-sans);font-size:.8125rem;font-weight:500;padding:.4375rem .75rem;background:transparent;color:var(--ink-muted);border:none;border-radius:0;cursor:pointer;transition:background .12s ease,color .12s ease}.auth-option+.auth-option{border-left:1px solid var(--rule-strong)}.auth-option:hover{background:var(--paper-sunk);color:var(--ink);border-color:var(--rule-strong)}.auth-option.active,.auth-option.active:hover{background:var(--rust-soft);color:var(--rust)}.chat-field{display:flex;flex-direction:column;gap:.375rem}.chat-field>span{font-family:var(--font-sans);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle)}.chat-field input{font-family:var(--font-mono);font-size:.8125rem;padding:.5rem .625rem;background:var(--paper-sunk);border:1px solid var(--rule);border-radius:3px;color:var(--ink)}.chat-field input:focus{outline:none;border-color:var(--rust)}.chat-messages{display:flex;flex-direction:column;gap:1.25rem;min-height:240px;max-height:60vh;overflow-y:auto;padding:.25rem 0}.chat-messages .empty{border:none;background:transparent;padding:1rem 0}.chat-starters{display:flex;flex-direction:column;gap:.875rem;padding:1rem 0}.chat-starters-label{font-family:var(--font-sans);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);margin:0}.chat-starters-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}@media(max-width:640px){.chat-starters-list{grid-template-columns:1fr}}.chat-starter{font-family:var(--font-sans);font-size:.875rem;font-weight:400;text-align:left;background:var(--paper-sunk);color:var(--ink-muted);border:1px solid var(--rule);border-radius:4px;padding:.75rem .875rem;line-height:1.45;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.chat-starter:hover{background:var(--paper-raised);color:var(--ink);border-color:var(--rule-strong)}.chat-message{display:flex;align-items:flex-start;gap:.875rem;font-family:var(--font-sans);font-size:.9375rem;line-height:1.55}.chat-avatar{flex-shrink:0;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--paper-sunk);color:var(--ink-muted);border:1px solid var(--rule)}.chat-message.assistant .chat-avatar{background:var(--rust-soft);color:var(--rust);border-color:var(--rust-soft)}.chat-avatar svg{width:16px;height:16px}.chat-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3125rem}.chat-role{font-family:var(--font-sans);font-size:.625rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle)}.chat-content{color:var(--ink);word-wrap:break-word;overflow-wrap:anywhere}.chat-content.dim{color:var(--ink-subtle)}.chat-message.user .chat-content{background:var(--paper-sunk);border-radius:8px;padding:.5rem .875rem;width:fit-content;max-width:100%}.chat-message.user .chat-content code,.chat-message.user .chat-content pre{background:var(--paper-raised)}.chat-message.user .chat-content pre code{background:transparent}.chat-content>:first-child{margin-top:0}.chat-content>:last-child{margin-bottom:0}.chat-content p{font-family:var(--font-sans);font-size:.9375rem;color:var(--ink);margin:.5em 0}.chat-content strong{font-weight:600}.chat-content em{font-style:italic}.chat-content a{color:var(--rust);text-decoration:underline}.chat-content code{font-family:var(--font-mono);font-size:.875em;background:var(--paper-sunk);border:1px solid var(--rule);border-radius:3px;padding:.05em .3em}.chat-content pre{background:var(--paper-sunk);border:1px solid var(--rule);border-radius:4px;padding:.75rem .875rem;margin:.75em 0;overflow-x:auto}.chat-content pre code{background:transparent;border:none;padding:0;font-size:.8125rem;line-height:1.5}.chat-content ul,.chat-content ol{margin:.5em 0;padding-left:1.5em}.chat-content li{margin:.25em 0}.chat-content blockquote{border-left:3px solid var(--rust-soft);margin:.75em 0;padding:.125em 0 .125em .875em;color:var(--ink-muted)}.chat-content h1,.chat-content h2,.chat-content h3,.chat-content h4,.chat-content h5,.chat-content h6{font-family:var(--font-serif);font-weight:600;margin:.875em 0 .375em;line-height:1.25}.chat-content h1{font-size:1.25rem}.chat-content h2{font-size:1.125rem}.chat-content h3{font-size:1rem}.chat-content h4,.chat-content h5,.chat-content h6{font-size:.9375rem}.chat-content hr{border:none;border-top:1px solid var(--rule);margin:1em 0}.chat-content table{border-collapse:collapse;margin:.75em 0;font-size:.875em}.chat-content th,.chat-content td{border:1px solid var(--rule);padding:.375rem .625rem;text-align:left}.chat-content th{background:var(--paper-sunk);font-weight:600}.chat-composer{display:flex;flex-direction:column;gap:.625rem}.chat-composer textarea{font-family:var(--font-sans);font-size:.9375rem;line-height:1.5;padding:.625rem .75rem;background:var(--paper-sunk);border:1px solid var(--rule);border-radius:3px;color:var(--ink);resize:vertical;min-height:80px}.chat-composer textarea:focus{outline:none;border-color:var(--rust)}.chat-composer-actions{display:flex;align-items:center;justify-content:flex-end;gap:.875rem}.chat-hint{font-family:var(--font-sans);font-size:.8125rem;color:var(--ink-subtle)}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-italic-Bxi8ein9.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
