:root{--bg:#fbf6ef;--surface:#fffef9;--text:#1f2937;--muted:#4b5563;--line:#e7dccd;--accent:#0f766e;--accent-strong:#115e59;--danger:#b91c1c;--shadow:#20160614 0 8px 20px;--sans:"Manrope", "Avenir Next", "Segoe UI", sans-serif}*{box-sizing:border-box}body{font-family:var(--sans);color:var(--text);background:radial-gradient(circle at 10% 10%, #0f766e14, transparent 40%), radial-gradient(circle at 90% 90%, #b4530917, transparent 38%), var(--bg);margin:0}#root{min-height:100svh}h1,h2,h3,p{margin:0}.app{gap:1rem;max-width:980px;margin:0 auto;padding:2rem 1rem 3rem;display:grid}.app.loading{place-items:center;min-height:100svh;display:grid}.panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;padding:1rem}.version{text-align:center;color:var(--muted,#888);font-size:.75rem}.header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.header h1{font-size:1.8rem}.header p{color:var(--muted)}.warning{justify-content:space-between;align-items:center;gap:1rem;display:flex}button,input,textarea{font:inherit}button{background:var(--accent);color:#f9fafb;cursor:pointer;border:1px solid #0000;border-radius:10px;padding:.55rem .9rem;transition:background .2s}button:hover{background:var(--accent-strong)}button:disabled{opacity:.55;cursor:not-allowed}label{gap:.4rem;display:grid}input,textarea{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:.55rem .65rem}.project-list{gap:.7rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.actions{gap:.5rem;margin-top:.8rem;display:flex}.error{color:var(--danger)}small{color:var(--muted)}@media (width<=740px){.header,.warning{flex-direction:column;align-items:flex-start}}
