.wrap{max-width:760px;margin:0 auto;padding:1.5rem 1.25rem 4rem}.hero{text-align:center;padding:1rem 0 1.25rem}.hero h1{font-size:1.8rem;font-weight:800;letter-spacing:-.04em;margin-bottom:.25rem}.hero h1 span{color:var(--coral)}.hero p{color:var(--text-muted);font-size:.88rem;max-width:440px;margin:0 auto}.hero-emoji{font-size:2.5rem;margin-bottom:6px}textarea.code{width:100%;min-height:220px;padding:16px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--accent);font-family:var(--mono);font-size:.8rem;line-height:1.6;resize:vertical;outline:0;transition:.15s;tab-size:4}textarea.code:focus{border-color:var(--accent)}textarea.code::placeholder{color:var(--text-dim)}.btn{padding:12px 28px;border-radius:var(--radius-sm);border:0;background:var(--accent);color:var(--bg);font-size:.9rem;font-family:var(--font);font-weight:700;cursor:pointer;transition:.12s;width:100%;margin-top:10px}.btn:hover{filter:brightness(1.1)}.btn:active{transform:scale(.97)}.btn-o{padding:9px 18px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--card);color:var(--text-muted);font-size:.82rem;font-family:var(--font);cursor:pointer;transition:.12s}.btn-o:hover{border-color:var(--border);color:var(--text)}.samples{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.sample-btn{padding:5px 12px;border-radius:6px;border:1px solid var(--border);background:0 0;color:var(--text-dim);font-size:.72rem;font-family:var(--font);cursor:pointer;transition:.12s}.sample-btn:hover{border-color:var(--border);color:var(--text-muted)}#result{display:none}.score-ring{width:160px;height:160px;margin:0 auto 14px;position:relative}.score-ring svg{width:160px;height:160px;transform:rotate(-90deg)}.score-ring circle{fill:none;stroke-linecap:round}.sr-bg{stroke:var(--border);stroke-width:10}.sr-fg{stroke-width:10;transition:stroke-dashoffset 1.5s ease}.sr-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.sr-pct{font-size:2.2rem;font-weight:900;font-family:var(--mono);line-height:1}.sr-label{font-size:.68rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-top:2px}.verdict{text-align:center;margin-bottom:20px}.verdict-emoji{font-size:2.5rem;margin-bottom:4px}.verdict-title{font-size:1.2rem;font-weight:800}.verdict-sub{font-size:.85rem;color:var(--text-muted);margin-top:4px;max-width:420px;margin-left:auto;margin-right:auto;line-height:1.5}.roast{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:8px;display:flex;gap:12px;align-items:flex-start}.roast-icon{font-size:1.3rem;flex-shrink:0;margin-top:2px}.roast-content{flex:1}.roast-title{font-size:.88rem;font-weight:700;margin-bottom:3px;display:flex;align-items:center;gap:6px}.roast-sev{font-size:.6rem;padding:2px 6px;border-radius:3px;font-weight:700;text-transform:uppercase}.rs-crit{background:#f26b5e1a;color:var(--coral)}.rs-warn{background:#f5c5421a;color:var(--amber)}.rs-info{background:#4a9cf51a;color:var(--accent)}.rs-lol{background:#e46db21a;color:var(--coral)}.roast-desc{font-size:.82rem;color:var(--text-muted);line-height:1.5}.roast-line{font-size:.72rem;color:var(--text-dim);font-family:var(--mono);margin-top:4px}.roast-joke{font-size:.78rem;color:var(--text-dim);font-style:italic;margin-top:4px}.good-card{background:#47e88a0a;border:1px solid rgba(71,232,138,.12);border-left:3px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm)0;padding:12px 16px;margin-bottom:8px;font-size:.84rem;color:var(--text-muted)}.good-card strong{color:var(--accent)}.share-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin:14px 0;text-align:center}.share-text{font-size:.82rem;color:var(--text-muted);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;font-family:var(--mono);line-height:1.5;text-align:left;margin:8px 0;position:relative}.cp{position:absolute;top:6px;right:6px;padding:4px 10px;border-radius:4px;border:1px solid var(--border);background:var(--border);color:var(--text-dim);font-size:.68rem;font-family:var(--font);cursor:pointer}.cp:hover{border-color:var(--accent);color:var(--accent)}.footer a:hover{color:var(--accent)}