*{box-sizing:border-box}body,html{margin:0;padding:0;background:#f4f5f7;color:#1f2430;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:inherit;text-decoration:none}.topbar{background:#17203a;color:#fff;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.topbar .brand{font-weight:700;font-size:18px}.topbar nav{display:flex;gap:16px;flex-wrap:wrap}.topbar nav a{padding:6px 10px;border-radius:6px;font-size:14px;opacity:.9}.topbar nav a:hover{background:hsla(0,0%,100%,.12)}.container{max-width:1080px;margin:0 auto;padding:20px}.card{background:#fff;border-radius:10px;padding:18px;box-shadow:0 1px 3px rgba(0,0,0,.08);margin-bottom:16px}.grid{display:grid;grid-gap:14px;gap:14px}.grid-3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat{font-size:26px;font-weight:700}.stat-label{color:#6b7280;font-size:13px;text-transform:uppercase;letter-spacing:.03em}h1{font-size:22px;margin:0 0 14px}h2{font-size:18px;margin:0 0 12px}h3{font-size:15px;margin:0 0 8px;color:#374151}.btn{display:inline-block;background:#2451ff;color:#fff;border:none;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.btn:hover{background:#1a3fd6}.btn.secondary{background:#e5e7eb;color:#1f2430}.btn.secondary:hover{background:#d1d5db}.btn.danger{background:#dc2626}.btn.danger:hover{background:#b91c1c}.btn.small{padding:6px 10px;font-size:13px}form.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}label{display:block;font-size:13px;color:#4b5563;margin-bottom:4px;font-weight:600}input,select,textarea{width:100%;padding:9px 10px;border:1px solid #d1d5db;border-radius:7px;font-size:14px;background:#fff;font-family:inherit}textarea{min-height:70px}.field{display:flex;flex-direction:column}table{width:100%;border-collapse:collapse;font-size:14px}td,th{text-align:left;padding:8px 10px;border-bottom:1px solid #eef0f3}th{color:#6b7280;text-transform:uppercase}.badge,th{font-weight:600;font-size:12px}.badge{display:inline-block;padding:3px 9px;border-radius:20px}.badge.em_preparo{background:#fef3c7;color:#92400e}.badge.a_venda{background:#dbeafe;color:#1e40af}.badge.vendido{background:#dcfce7;color:#166534}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));grid-gap:10px;gap:10px}.photo-grid img{width:100%;height:110px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.doc-list a{display:block;padding:8px 10px;background:#f8f9fb;border-radius:6px;margin-bottom:6px;font-size:14px;border:1px solid #eef0f3}.profit-positive{color:#166534;font-weight:700}.profit-negative{color:#b91c1c;font-weight:700}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#17203a}.login-box{background:#fff;border-radius:12px;padding:32px;width:100%;max-width:380px}.error-msg{background:#fee2e2;color:#991b1b;padding:10px 12px;border-radius:8px;font-size:14px;margin-bottom:12px}.actions-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.muted{color:#6b7280;font-size:13px}.contract-list{display:flex;flex-wrap:wrap;gap:10px}