@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700&display=swap";:root{color:#171914;font-synthesis:none;text-rendering:optimizelegibility;--ink:#171914;--muted:#727367;--paper:#f2efdf;--paper-light:#faf8ec;--line:#d6d2bf;--yellow:#e4ff3e;--danger:#a33b2f;background:#f2efdf;font-family:Manrope,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #6f7f00}svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem}.login-shell{background:var(--ink);min-height:100svh;color:var(--paper-light);grid-template-columns:minmax(0,1fr) minmax(18rem,34vw);display:grid;position:relative;overflow:hidden}.grain{pointer-events:none;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E");position:absolute;inset:0}.login-copy{z-index:1;align-self:center;max-width:58rem;padding:clamp(2rem,7vw,7rem);animation:.65s cubic-bezier(.2,.8,.2,1) both enter}.eyebrow{color:#727367;letter-spacing:.14em;text-transform:uppercase;margin:0 0 1rem;font:500 .72rem/1.4 DM Mono,monospace}.login-copy .eyebrow{color:var(--yellow)}.login-copy h1{letter-spacing:-.07em;max-width:13ch;margin:0;font-size:clamp(3.3rem,7vw,7.8rem);font-weight:500;line-height:.92}.login-summary{color:#babcb2;max-width:34rem;margin:2rem 0;font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.65}.discord-button,.primary-button{background:var(--yellow);color:var(--ink);cursor:pointer;border:0;font-weight:700;transition:transform .18s,background .18s}.discord-button{align-items:center;gap:.75rem;min-height:3.5rem;padding:0 1.4rem;display:inline-flex}.discord-button svg{fill:currentColor;stroke:none}.discord-button:hover,.primary-button:hover{background:#edff79;transform:translateY(-2px)}button:disabled{cursor:wait;opacity:.65}.login-note{z-index:1;color:#a8aa9e;border-top:1px solid #45473f;align-self:end;margin:3rem;padding-top:1.2rem;font-size:.88rem;line-height:1.6;animation:.65s cubic-bezier(.2,.8,.2,1) .15s both enter}.login-note span{color:var(--paper-light);margin-bottom:.35rem;font-weight:700;display:block}.error-message{color:#ff9a8d}.app-shell{background:var(--paper);min-height:100svh}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:5.25rem;padding:0 clamp(1.25rem,4vw,4rem);display:flex}.wordmark{color:var(--ink);letter-spacing:.12em;align-items:center;gap:.7rem;font-size:1.05rem;font-weight:800;text-decoration:none;display:inline-flex}.wordmark-dot{background:var(--yellow);border:1px solid #bacd24;border-radius:50%;width:.85rem;height:.85rem}.identity{align-items:center;gap:.75rem;display:flex}.identity img,.avatar-fallback{border-radius:50%;width:2.2rem;height:2.2rem}.avatar-fallback{background:var(--ink);color:var(--paper);place-items:center;display:grid}.identity-copy{text-align:right;flex-direction:column;display:flex}.identity-copy strong{font-size:.85rem}.identity-copy span{color:var(--muted);font-size:.72rem}.text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.45rem .2rem;font-size:.78rem}.text-button:hover{color:var(--ink)}.workspace{grid-template-columns:15rem minmax(0,1fr);min-height:calc(100svh - 5.25rem);display:grid}.scope-nav{border-right:1px solid var(--line);padding:3rem 1.5rem}.scope-nav>p{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 1.2rem .7rem;font:500 .68rem DM Mono,monospace}.scope-nav button{color:#55574f;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:.75rem;width:100%;min-height:2.8rem;padding:0 .75rem;font-size:.86rem;font-weight:600;display:flex}.scope-nav button:hover,.scope-nav button.active{color:var(--ink);background:#1719140f}.scope-nav button.active:after{content:"";background:#98ad00;border-radius:50%;width:.4rem;height:.4rem;margin-left:auto}.scope-help{border-top:1px solid var(--line);margin:3rem .75rem 0;padding-top:1rem}.scope-help span{color:var(--muted);margin-bottom:.4rem;font-size:.68rem;display:block}.scope-help code{color:#56594f;overflow-wrap:anywhere;font:.65rem DM Mono,monospace}.library-panel{width:min(100%,78rem);padding:clamp(2.25rem,5vw,5rem)}.section-heading{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.5rem;animation:.38s both rise;display:flex}.section-heading h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.3rem,4vw,4.5rem);font-weight:500;line-height:1}.section-heading>div>p:last-child{max-width:38rem;color:var(--muted);margin:1rem 0 0;line-height:1.6}.file-count{color:var(--muted);flex:none;font:.72rem DM Mono,monospace}.subsection-heading{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.subsection-heading .eyebrow{margin-bottom:.55rem}.subsection-heading h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.35rem,2vw,2rem);font-weight:600}.context-editor-section{animation:.42s 60ms both rise}.context-guidance{max-width:48rem;color:var(--muted);margin:.8rem 0 1.1rem;font-size:.82rem;line-height:1.6}.editor-actions{align-items:center;gap:1rem;display:flex}.save-state{color:var(--muted);font:.68rem DM Mono,monospace}.save-state.dirty{color:#6f7f00}.context-editor{border-block:1px solid var(--ink);background:var(--paper-light);min-height:27rem;overflow:hidden}.context-textarea{resize:vertical;background:var(--paper-light);width:100%;min-height:27rem;color:var(--ink);tab-size:2;border:0;border-radius:0;outline:0;padding:1.15rem 1.25rem 2rem;font:.86rem/1.7 DM Mono,monospace;display:block}.context-textarea:focus-visible{box-shadow:inset 0 0 0 2px #98ad00}.context-textarea::placeholder{color:#85877c}.file-preview diffs-container{min-width:0;display:block}.editor-loading{min-height:27rem;color:var(--muted);justify-content:center;align-items:center;gap:.65rem;font-size:.8rem;display:flex}.editor-meta{min-height:2.5rem;color:var(--muted);align-items:center;gap:1rem;font:.64rem DM Mono,monospace;display:flex}.editor-meta span+span:before{content:"·";margin-right:1rem}.references-section{margin-top:clamp(4rem,8vw,7rem);animation:.42s .12s both rise}.references-heading{margin-bottom:1.2rem}.references-heading>span{color:var(--muted);font:.68rem DM Mono,monospace}.upload-strip{border-block:1px solid var(--ink);align-items:center;gap:1rem;min-height:7rem;padding:1.25rem 1.4rem;transition:background .18s,padding .18s;display:flex}.upload-strip.dragging{background:var(--yellow);padding-inline:2rem}.upload-strip input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.upload-copy{align-items:center;gap:1rem;min-width:0;display:flex}.upload-copy>svg{width:1.7rem;height:1.7rem}.upload-copy div{flex-direction:column;gap:.3rem;display:flex}.upload-copy strong{font-size:.95rem}.upload-copy span{color:var(--muted);font-size:.76rem}.upload-strip.dragging .upload-copy span{color:#555b0a}.primary-button{flex:none;min-height:2.8rem;margin-left:auto;padding:0 1.1rem}.notice{color:#4f5a00;min-height:1.2rem;margin:.9rem 0;font-size:.8rem}.reference-browser{border-block:1px solid var(--ink);background:#ffffff2e;grid-template-columns:minmax(17rem,22rem) minmax(0,1fr);min-height:26rem;margin-top:1.4rem;display:grid}.file-list{border-right:1px solid var(--line);min-width:0}.file-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 2.3rem 2.3rem;align-items:center;min-height:4.7rem;padding:.55rem .5rem .55rem .8rem;transition:background .18s,padding .18s;display:grid}.file-row:hover,.file-row.selected{background:#ffffff80}.file-row.selected{padding-left:1.05rem;box-shadow:inset 3px 0 #98ad00}.file-name{min-width:0;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:.8rem;padding:.3rem 0;display:flex}.file-name>svg{color:#65685e;flex:none}.file-name span{flex-direction:column;gap:.2rem;min-width:0;display:flex}.file-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:650;overflow:hidden}.file-name small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;overflow:hidden}.download-button,.delete-button{width:2.3rem;height:2.3rem;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.download-button{text-decoration:none}.download-button:hover{color:var(--ink);background:#1719140f}.delete-button:hover{color:var(--danger);background:#a33b2f14}.download-button svg,.delete-button svg{width:1rem;height:1rem}.file-preview{background:var(--paper-light);min-width:0;max-height:38rem;overflow:auto}.file-preview .empty-state{min-height:26rem}.preview-prompt svg{color:#7f8276}.empty-state{min-height:15rem;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.55rem;display:flex}.empty-state>svg{width:2rem;height:2rem;margin-bottom:.5rem}.empty-state strong{color:var(--ink);font-size:.9rem}.empty-state span:last-child{font-size:.78rem}.spinner{border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;width:1rem;height:1rem;animation:.8s linear infinite spin;display:inline-block}.loading-screen{background:var(--ink);min-height:100svh;color:var(--paper);justify-content:center;align-items:center;gap:.7rem;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes enter{0%{opacity:0;transform:translateY(1.2rem)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(.6rem)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=760px){.login-shell{display:flex}.login-copy{align-self:flex-end;padding:2rem 1.4rem 6rem}.login-copy h1{font-size:clamp(3rem,15vw,5rem)}.login-note{display:none}.topbar{min-height:4.5rem}.identity-copy,.text-button{display:none}.workspace{min-height:calc(100svh - 4.5rem);display:block}.scope-nav{border-right:0;border-bottom:1px solid var(--line);gap:.4rem;padding:.8rem 1rem;display:flex;overflow-x:auto}.scope-nav>p,.scope-help{display:none}.scope-nav button{flex:none;width:auto;padding-inline:.8rem}.library-panel{padding:2.2rem 1.1rem}.section-heading{align-items:flex-start}.file-count{margin-top:.5rem}.subsection-heading{flex-direction:column;align-items:flex-start;gap:1rem}.editor-actions{justify-content:space-between;width:100%}.context-editor{min-height:23rem}.context-textarea{min-height:23rem;padding-inline:.9rem}.editor-loading{min-height:23rem}.editor-meta{flex-wrap:wrap;gap:.45rem .8rem;padding-block:.55rem}.editor-meta span+span:before{margin-right:.8rem}.upload-strip{flex-wrap:wrap;align-items:flex-start}.upload-copy,.primary-button{width:100%}.editor-actions .primary-button{width:auto}.reference-browser{display:block}.file-list{border-right:0;border-bottom:1px solid var(--line)}.file-preview{min-height:24rem;max-height:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
