*{box-sizing:border-box}body{color:#111827;background:#f8fafc;margin:0;font-family:Inter,Segoe UI,Roboto,sans-serif}.app-shell{max-width:1080px;margin:0 auto;padding:24px 20px 40px}.hero h1{margin:0;font-size:1.8rem}.hero-brand{align-items:center;gap:10px;display:flex}.hero-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.hero-guide-link{color:#2563eb;white-space:nowrap;font-size:.95rem;text-decoration:none}.hero-guide-link:hover{text-decoration:underline}.hero-logo{object-fit:contain;width:42px;height:42px}.hero p{color:#6b7280;margin-top:8px}.card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-top:16px;padding:16px}.card h2{margin-top:0;margin-bottom:12px;font-size:1.1rem}.grid{gap:12px;display:grid}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}label{color:#111827;flex-direction:column;gap:6px;font-size:.92rem;display:flex}.inline-field{min-width:220px}input,select,textarea,button{font:inherit}.field-help-link{color:#2563eb;align-self:flex-start;font-size:.85rem;text-decoration:none}.field-help-link:hover{text-decoration:underline}input,select,textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:10px 12px}textarea{box-sizing:border-box;resize:vertical;width:100%;line-height:1.45}button{color:#fff;cursor:pointer;background:#111827;border:1px solid #111827;border-radius:8px;padding:10px 14px}button.secondary{color:#111827;background:#fff}button:disabled{opacity:.6;cursor:not-allowed}.toggle{border:1px solid #e5e7eb;border-radius:8px;flex-direction:row;align-items:center;gap:8px;padding:8px 10px;display:flex}.toggle input{margin:0}.meta{color:#6b7280;font-size:.9rem}.key-persistence{align-items:flex-end;margin-top:12px}.history-list{flex-direction:column;gap:10px;display:flex}.history-item{border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.status{border-radius:8px;margin-top:12px;padding:10px 12px}.status.error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.status.success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}@media (width<=900px){.two-col,.three-col{grid-template-columns:1fr}}
